2011-02-26 11 views
5

आज मैं app की दुकान करने के लिए अपने iOS एप्लिकेशन प्रस्तुत है, लेकिन जल्द ही मैं सेब से एक मेल मिला है, यह कहा जाता है कि,आईओएस में bzip2 प्रारूप का उपयोग कैसे करें? एप्पल मुझे बताओ bzBuffToBuffDecompress निजी एपीआई

App स्टोर पोस्ट नहीं किया जा सकता है क्योंकि यह उपयोग कर रहा है निजी या अप्रलेखित एपीआई:

Private Symbol References 

BZ2_bzBuffToBuffDecompress 

कि आप जानते हैं, iPhone प्रोग्राम लाइसेंस अनुबंध में उल्लिखित खंड 3.3.1 के रूप में, गैर सरकारी API के उपयोग को अनुमति नहीं है। आपके एप्लिकेशन की समीक्षा ऐप समीक्षा टीम द्वारा की जा सकती है, कृपया इस समस्या को हल करें और iTunes कनेक्ट करने के लिए एक नई बाइनरी अपलोड करें।

मुझे क्या करना चाहिए? मुझे वास्तव में मेरे ऐप में bzip2 प्रारूप समर्थन की आवश्यकता है।

+0

डब्ल्यूटीएफ? SQLite का उपयोग ठीक है लेकिन bzip2 नहीं है? – DarkDust

+0

और भी विचित्र, मैं पूरी तरह से भूल गया कि वे उपयोग zlib को अनुमति देते हैं ... bzip2 को प्रतिबंधित करना अब मुझे एक निरीक्षण की तरह दिखता है क्योंकि उन्होंने एसडीके में दस्तावेज़ नहीं जोड़े हैं। – DarkDust

उत्तर

4

चूंकि bzip2 का लाइसेंस संगत है (इसे पढ़ें, कृपया) आप गतिशील रूप से bzip2 के विरुद्ध स्थिर रूप से लिंक कर सकते हैं। खोज की थोड़ी सी iOS-libarchive की ओर ले जाती है जो आपको ऐसा करने में मदद करेगी।

+0

धन्यवाद, मैं खुशी से देखने के लिए bzip2 के खिलाफ स्थिर रूप से लिंक करने का प्रयास करूंगा। – Tinyfool

+2

मैं अपनी परियोजना में स्थिर bzip2 जोड़ता हूं, लेकिन एक्सकोड अभी भी गतिशील संस्करण का उपयोग कर रहा है, इसलिए मैं libbz2.a को libzz2.a में बदलता हूं, एक्सकोड गतिशील संस्करण नहीं ढूंढ सकता है, इसलिए यह काम करता है। – Tinyfool

2

बेन Gottlieb के जवाब से this question रहे हैं:

अपने लक्ष्य सेटिंग्स विंडो में, "अन्य लिंकर झंडे" अनुभाग तक नीचे स्क्रॉल और यह सुनिश्चित करें क्षेत्र में है कि -lz बनाते हैं। यह बिल्ट-इन zlib के विरुद्ध लिंक करेगा, और आपकी त्रुटि दूर होनी चाहिए।

इस मामले को छोड़कर, आप -lbz2 ध्वज का उपयोग करना चाहते हैं।

संबंधित मुद्दे