2008-10-01 43 views
20

मैं एक आईफोन ऐप विकसित कर रहा हूं और उन्हें डेटाबेस में रखने के लिए एक्सएमएल फाइलों को पार्स करना है। मैं अपने ऐप में वही एक्सएमएल पार्सर्स का भी उपयोग करूँगा ताकि उपयोगकर्ता अपना डेटा आयात कर सकें। मैं सोच रहा था कि मैं उन एक्सएमएल पार्सर्स को बंडल या लाइब्रेरी में कैसे निकाला जा सकता हूं, इसलिए मैं उन्हें अपने आईफोन ऐप और कमांड लाइन एप में दोनों का उपयोग कर सकता हूं जहां मैं सिर्फ एसक्लाइट 3 डेटाबेस को पॉप्युलेट करता हूं।मैं एक्सकोड में पुन: प्रयोज्य कोड का बंडल कैसे बना सकता हूं?

अग्रिम धन्यवाद!

उत्तर

15

एक स्थिर लाइब्रेरी प्रोजेक्ट बनाएं, फिर सही क्रम में उन्हें बनाने के लिए एक्सकोड की इंटरप्रोजेक्ट निर्भरता सुविधा का उपयोग करें और ऐप को स्थिर लाइब्रेरी से लिंक करें। इसके लिए आपको सभी परियोजनाओं के लिए सही ढंग से काम करने के लिए एक सामान्य बिल्ड निर्देशिका सेट करने की आवश्यकता होगी (कम से कम आपने एक्सकोड 3.0 के आसपास किया था, यह जांच नहीं की कि यह अभी भी 3.1 के साथ एक समस्या है)।

आप लक्ष्य या प्रोजेक्ट की बिल्ड सेटिंग्स (गेट इन्फो फलक में) से बिल्ड निर्देशिका सेट कर सकते हैं। इंटरपोजेक्ट निर्भरता बनाने के लिए:

  • लाइब्रेरी प्रोजेक्ट को एप्लिकेशन प्रोजेक्ट की फ़ाइलों & समूह फलक में खींचें।
  • एप्लिकेशन लक्ष्य के प्राप्त जानकारी फलक में लक्ष्य निर्भरता सेट अप करें। इसे लाइब्रेरी के लक्ष्य पर निर्भर करें।
  • लाइब्रेरी उत्पाद को लाइब्रेरीज़ चरण के साथ एप्लिकेशन लक्ष्य के लिंक में खींचें। आप ऐप प्रोजेक्ट की फ़ाइलों & समूहों (तीर पर क्लिक करें) के भीतर लाइब्रेरी प्रोजेक्ट का विस्तार करके लाइब्रेरी उत्पाद पा सकते हैं।

इससे अधिक जटिल लगता है। यह ज्यादा नहीं है।

(छोटे एक्स्ट्रा: हाँ, आपको Xcode Project Management Guide में संकेत के अनुसार एक सामान्य बिल्ड फ़ोल्डर की आवश्यकता है, और Xcode Build System Guide आपको Xcode के निर्माण प्रणाली को "प्राप्त करने" में मदद कर सकता है, जो - एक धर्म युद्ध शुरू करने की लागत पर - मुझे लगता है वहाँ सबसे लचीला और सरल निर्माण प्रणाली में से एक है।)

+0

आपकी विस्तृत प्रतिक्रिया के लिए धन्यवाद। जब मैं आज रात घर जाता हूं तो मैं इसे आजमाऊंगा –

+3

आपको एक्सकोड 3.1.1 (3.1 नहीं) के रूप में एक सामान्य बिल्ड निर्देशिका का उपयोग करने की आवश्यकता नहीं है। –