2011-08-30 11 views
6

उद्देश्य-सी और एक्सकोड में सुंदर नया (2 सप्ताह), और मैं बाहरी सर्वर से कुछ JSON पढ़ने के लिए, अपनी पहली "बाहरी" लाइब्रेरी, नाम restkit जोड़ने की कोशिश कर रहा हूं।उद्देश्य-सी और एक्सकोड में तृतीय-पक्ष पुस्तकालय कैसे काम करते हैं?

हालांकि, उनके "शुरू हो रही है" गाइड पर देख रहे हैं, क्या मैं समझता हूँ कि तुम सिर्फ sourcecode के साथ एक पैकेज को डाउनलोड करने और में लिंक और अपने खुद के निर्माण के हिस्से के रूप में यह निर्माण से किसी भी तरह ... (गाइड is here) , विशेष रूप से बिंदु 4 दिलचस्प है)

मैं कई वर्षों के जावा डेवलपर हूं और मैं इसकी तुलना करने की कोशिश करता हूं कि यह कैसे काम करता है, संकलित, पैक किए गए जार-फाइलों के साथ जो आप बदल नहीं सकते हैं। जर्फ़ाइल इस से कैसे संबंधित हैं? जो मैं देख सकता हूं, उससे आप बस देख सकते हैं और किसी भी तृतीय-पक्ष फ़ाइलों को बदल सकते हैं जैसा कि आप फिट देखते हैं।

अगर कोई मुझे समझने में मेरी सहायता कर सकता है तो मैं इसकी सराहना करता हूं।

उत्तर

14

बाहरी कोड हो सकता है:

एक गतिशील पुस्तकालय (.dlyb) जो एक ढांचे के रूप में वितरित किया जा सकता है और स्थापित मशीन पर। लेकिन ध्यान रखें, कि आप आईफोन पर ढांचे को स्थापित नहीं कर सकते - आपका ऐप सैंडबॉक्स है। फ्रेमवर्क की एक निश्चित संख्या आपके लिए उपलब्ध है जो सभी iPhones पर हैं।

आप एक स्थिर पुस्तकालय भी उपभोग कर सकते हैं। लिंकिंग के दौरान आपके ऐप्स बाइनरी में एक स्थिर लाइब्रेरी संकलित की जाती है।

लिंक: http://blog.carbonfive.com/2011/04/04/using-open-source-static-libraries-in-xcode-4/

अन्य और काफी आम रूप कोड लेने वाली है। आईफोन विकास में यह आम है क्योंकि डिवाइस कितना बंद है और आपके ऐप को कितना सैंडबॉक्स किया गया है। यह भी लोकप्रिय है क्योंकि कई घटकों और पुस्तकालयों को जिथूब पर खुले खुले हैं। साझाकरण कोड आमतौर पर दो रूपों में आता है:

कॉपी कोड - अपने ऐप में कुछ फ़ाइलें जोड़ें और आप जाएं। आपको कुछ आवधिक आधार पर फ़ाइलों को अपडेट करना होगा।

xcode उप-प्रोजेक्ट - आप अपनी परियोजना में एक उप-प्रोजेक्ट के रूप में बाहरी पुस्तकालय xcode प्रोजेक्ट जोड़ सकते हैं। वह सब-प्रोजेक्ट एक स्थिर लाइब्रेरी (लक्ष्य) उत्पन्न कर सकता है जिसे आपका ऐप खपत करता है। xcode4 में, आपके पास वर्कस्पेस भी हो सकता है जिसमें एकाधिक प्रोजेक्ट्स हों।

उपभोक्ता कोड को इसमें डीबग करने में सक्षम होने का लाभ है। कोड जितना जटिल होगा, उप-प्रोजेक्ट अधिक आकर्षक उपभोग होगा। अगर यह स्वयं निहित फाइलों का मुट्ठी भर है, तो बस फाइलें जोड़ना सरल है।

उम्मीद है कि कुछ मदद करता है।

+0

ग्रेट उत्तर धन्यवाद। चूंकि आप अपने रास्ते को जानना चाहते हैं, तो क्या आपके पास उस गाइड को देखने के लिए समय होगा, चरण चार। इसमें आपके द्वारा वर्णित "सब-प्रोजेक्ट" दृष्टिकोण शामिल है, लेकिन मैं xcode 4.2 का उपयोग कर रहा हूं और मुझे यकीन नहीं है कि उस चरण को कैसे पूरा किया जाए। मेरे विचार में, मार्गदर्शिका में कोई चेकबॉक्स नहीं हैं ... – Mathias

1

तृतीय पक्ष ढांचे स्रोत रूप में या संकलित ढांचे के रूप में आ सकते हैं। एक संकलित ढांचा शायद एक जार-फाइल के निकटतम है जिसका आप उपयोग करते हैं। इस मामले में, ढांचा स्रोत कोड के रूप में उपलब्ध है, इसलिए वे आपके प्रोजेक्ट में फ्रेमवर्क प्रोजेक्ट जोड़ने का सुझाव देते हैं।

मैं अपने ढांचे को अलग से संकलित करना पसंद करता हूं, और बस मेरी परियोजनाओं में संकलित ढांचे को शामिल करता हूं। किसी भी तरह से काम करता है।

+0

धन्यवाद बहुत दोस्त! वाह, संकलन, तो अनुमान है कि मुझे उसको बाहर निकालना होगा :) – Mathias

1

एक और तरीका एक निर्भरता प्रबंधक है जिसे CocoaPods कहा जाता है। यह अभी भी बीटा है, लेकिन यह उपयोग करने के लिए तैयार है।कुछ पुस्तकालयों के लिए a few व्यंजन हैं और यदि आपको वह नहीं मिलता है जो आप चाहते हैं, तो आप इसके लिए एक विनिर्देश बना सकते हैं। RestKit के लिए एक विनिर्देश उपलब्ध है।

+0

प्रश्न पूछने के बाद से यह परिपक्व हो गया है - आपको अभी भी बहुत उपयोगी ओबीजे-सी पुस्तकालयों को नहीं मिलेगा। – fatuhoku

0

आप इसे बहुत कठिन क्यों लेते हैं! अपनी प्रोजेक्ट फ़ाइल का चयन करें और बिल्ड चरण> संकलन स्रोतों का चयन करें> आपको .m फ़ाइल जोड़ें जो आपने जोड़ा है> बनाएं और चलाएं> आनंद लें

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