xcode एक्सकोड में एंबेडेड बायनेरिज़ क्या हैं?




xcode6 embed (3)

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

आपके अल्मोफायर उदाहरण में आपका आवेदन आलमोफायर पर निर्भर करता है। यदि आपने Alamofire ढांचे को एम्बेड नहीं किया है, तो कोई भी आपके एप्लिकेशन का उपयोग नहीं कर पाएगा जब तक कि वे मैन्युअल रूप से Alamofire स्थापित नहीं करते। अपने आवेदन के साथ Alamofire को एम्बेड करके हर कोई आपके एप्लिकेशन को चला सकता है।

मैं एक स्विफ्ट परियोजना में Alamofire का उपयोग कर रहा हूं, और उनके मैनुअल इंस्टॉलेशन निर्देशों का एक हिस्सा मेरे आवेदन लक्ष्य के लिए जनरल टैब में एंबेडेड बायनेरिज़ के तहत अलमॉफायर जोड़ना है।

एंबेडेड बायनेरिज़ क्या हैं?


  • "बाइनरी" का अर्थ है: संकलित कोड - "स्रोत कोड" के विपरीत, जो आप पाठ के रूप में कोड लिखते समय आप के साथ काम कर रहे हैं।

    वे आपको स्रोत कोड दे सकते थे और आप इसे संकलित कर सकते थे, लेकिन उन्होंने ऐसा नहीं किया; वे स्रोत कोड को गुप्त रख रहे हैं, इसलिए उन्होंने संकलन के बाद आपको यह सब दिया है, ताकि आप इसे पढ़ न सकें।

  • "एंबेडेड" का अर्थ है: अपने ऐप बंडल के अंदर शामिल होना, उन्हें बिल्ड टाइम में कॉपी करके।

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

    कोको के ढांचे में इसके विपरीत। वे भी, संकलित कोड हैं। लेकिन वे पहले से ही डिवाइस पर मौजूद हैं। इसलिए वे आपके ऐप के अंदर एम्बेडेड नहीं हैं; वे केवल लिंक किए गए हैं (और, यदि वे दिखाई देते हैं, तो अगले समूह, लिंक्ड फ्रेमवर्क और लाइब्रेरी में दिखाई देंगे)।


एंबेडिंग बायनेरिज़ पूरे ढांचे को लक्ष्य तक कॉपी करता है।

एक framework एक पदानुक्रमित निर्देशिका है जो एक डायनेमिक लाइब्रेरी, हेडर फ़ाइलों और संसाधनों, जैसे स्टोरीबोर्ड, छवि फ़ाइलों और स्थानीय स्ट्रिंग्स को एक पैकेज में संलग्न करता है। ऐप्‍लिकेशन का उपयोग करने वाले ऐप्स को ऐप के बंडल में embed the framework

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

जब हम Embedded Binaries एक framework जोड़ते हैं तो यह स्वचालित रूप से उस फ्रेमवर्क को Linked Frameworks and Libraries भी जोड़ता है।

अधिक जानकारी के लिए ऐप्पल प्रलेखन का संदर्भ लें: https://developer.apple.com/library/archive/technotes/tn2435/_index.html





alamofire