Xcode 4: .xcarchive के बजाय IPA फ़ाइल बनाएँ


182

IPcode 3.2.5 में मैं IPA फ़ाइल बनाने के लिए "बिल्ड एंड आर्काइव" का उपयोग करता हूं। Xcode 4 में आप एक .xcarchive बंडल में एप्लिकेशन को संग्रहित करने के लिए "उत्पाद -> पुरालेख" का उपयोग कर सकते हैं।

मैं Xcode 4 के साथ .ipa फ़ाइल कैसे बना सकता हूँ?


इसी तरह के एक अन्य प्रश्न के उत्तर की कोशिश करें: /programming/5271496/xcode4-ios-4-3-no-packager-exists-for-the-type-of-archive/5322743##322743
pankanen


3
हर बार जब मैं एक नया एडहॉक संस्करण बनाता हूं, तो मेरी Google खोज मुझे यहां ले जाती है। मैंने पिछले कुछ महीनों में कई बार इस पृष्ठ को देखा है। अच्छा सवाल, अच्छा समाधान
conebbeare

अच्छा प्रश्न और अच्छा उत्तर। तदर्थ बिल्ड सर्वर बनाने
रामकृष्ण गुट्टा

जवाबों:


391

IPA बनाना उसी तरह से किया जाता है जैसे कि .xcarchive: Product -> Archive बनाना। पुरालेख ऑपरेशन पूरा होने के बाद, ऑर्गनाइज़र के पास जाएँ, अपने संग्रह का चयन करें, शेयर चुनें और "साझा करने के लिए सामग्री और विकल्पों का चयन करें:" सेट करें "iOS ऐप स्टोर पैकेज (.ipa) और iPhone वितरण के लिए पहचान (जिसमें)। परियोजना के लिए अपने तदर्थ / ऐप स्टोर प्रोविजनिंग प्रोफाइल से मेल खाना चाहिए)।

संभावना "iOS ऐप स्टोर पैकेज (.ipa)" विकल्प को अक्षम किया जा सकता है। ऐसा तब होता है जब आपका निर्माण एकल लक्ष्य से अधिक उत्पादन करता है: कहते हैं, एक ऐप और एक पुस्तकालय। उन सभी का निर्माण उत्पादों के फ़ोल्डर में समाप्त हो जाता है और Xcode भोलेपन से भ्रमित हो जाता है कि उन दोनों को एक .ipa फ़ाइल में कैसे पैकेज किया जाए, इसलिए यह केवल विकल्प को निष्क्रिय करता है।

इसे हल करने का एक तरीका इस प्रकार है: एप्लिकेशन लक्ष्य को छोड़कर प्रत्येक लक्ष्य के लिए बिल्ड सेटिंग्स से गुजरें, और सेट करें छोड़ें ध्वज को हाँ में स्थापित करें। फिर उत्पाद -> पुरालेख टैंगो एक बार फिर से करें और अपने नए संग्रह का चयन करने के लिए आयोजक पर जाएं। अब, शेयर बटन पर क्लिक करते समय, .ipa विकल्प को सक्षम किया जाना चाहिए।

आशा है कि ये आपकी मदद करेगा।


2
इससे मेरी समस्या ठीक हो गई, धन्यवाद! मेरे मामले में समस्या वास्तव में बच्चों की परियोजनाओं में से एक थी (मेरे लिए प्रोटोकॉलबफर्स) जिसमें कई लक्ष्य थे जिन्हें सेट करने के लिए स्किप की आवश्यकता थी।
जोसेफ

उत्पाद -> संग्रह विकल्प दिखाई देने से पहले आपको उत्पाद -> अपने कार्यक्षेत्र को साफ और खोलना / बंद करना पड़ सकता है।
बजे मार्क चेकरियन

मुझे कई लक्ष्यों के साथ समस्या थी। स्किप इंस्‍टॉल यस और एप को शेयर इंस्‍टॉल करने के लिए एप्‍लिकेशन इंस्‍टॉल इंस्‍टॉल नं को तय किया। यह मेरे लिए एक समस्या नहीं थी Xcode 3.2, केवल 4.1।
15anc में logancautrell

44
"शेयर" अब "वितरित करें ..." फिर "एड-हॉक परिनियोजन के एंटरप्राइज़ के लिए सहेजें" का चयन करें
रेम्ब्रांट Q. आइंस्टीन

"स्किप इंस्टॉल" पर्याप्त नहीं है - मुझे यह बग एक्सकोड 4.5 के साथ मिला है, और यह हमेशा सही ढंग से वितरित करने से इनकार करता है, जब से मैंने एक पुस्तकालय को बंडल के साथ जोड़ा।
एडम

44

बस यस को स्किप इनस्टॉल सेट करना मेरे लिए काम नहीं आया। उम्मीद है कि इससे किसी को मदद मिलेगी।

मैं अपने प्रोजेक्ट लक्ष्य की निर्भरता में गया: कोरप्लॉट-कोकोआटच। फिर Coreplot-CocoaTouch टारगेट पर गया। अपने लक्ष्य में बिल्ड चरणों को खोला। फिर कॉपी हेडर्स खोले। वहाँ मेरे पास कुछ सार्वजनिक रूप से हेडर थे, कुछ निजी और कुछ प्रोजेक्ट में। सभी को प्रोजेक्ट करने के लिए ले जाया गया।

बेशक, कोरप्लेट-कोकोआटाउट लक्ष्य की बिल्ड सेटिंग्स में जाँच की गई कि स्किप इंस्टॉलेशन को परिनियोजन विकल्पों में हां में सेट किया गया था।

और इस बार आर्काइव ने एक आर्काइव बनाया, जिस पर हस्ताक्षर किए जा सकते हैं।


1
ऊपर की ओर कदम के साथ पूरी तरह से काम करने के लिए चलती हेडर के बाद। धन्यवाद
iOSAppDev

एक ठंडी हवा की तरह! OAuth के लिए इस परियोजना में github.com/sprhawk/ytoolkit.git छोड़ने वाले किसी व्यक्ति को इसकी आवश्यकता होगी। धन्यवाद।
20

2
क्यों ओह क्यों Xcode अभी भी इस तरह के रूप में कीड़ों से भरा है? इस टिप्पणी की तुलना में 18 महीने बाद और बग अभी भी है! सहायता के लिए धन्यवाद।
बेन क्लेटन

आपको पता नहीं है कि मैं अभी आपको कितना प्यार करता हूं ... कम से कम मेरी एक समस्या हल हो गई है! धन्यवाद!
Dmytro

15

Xcode 4.6 (और Xcode 5) संग्रह के लिए

  • ऑर्गनाइज़र में, एक आर्काइव पर राइट-क्लिक करें, फाइंडर में शो चुनें
  • खोजक में, एक संग्रह पर राइट-क्लिक करें, दिखाएँ पैकेज सामग्री
  • फ़ोल्डर उत्पाद खोलें> अनुप्रयोग
  • आवेदन वहाँ है
  • आईट्यून्स ऐप्स फ़ोल्डर में एप्लिकेशन को खींचें

    यहां छवि विवरण दर्ज करें

  • आईट्यून्स ऐप में एप्लिकेशन पर राइट-क्लिक करें, शो इन फाइंडर चुनें

  • .ipaवहाँ है!

यह वही है जो मुझे अपने xcode 4.6.3 के लिए वास्तव में चाहिए, उपरोक्त सभी मेरे लिए सिर्फ गैर-समझदारी है, केवल यह एक काम है। महान !
फॉरेस्ट

सावधानी, एक आईपीए बनाएगा, लेकिन ठीक से स्थापित नहीं हो सकता है, यह सिंक के बाद फोन पर आइकन दिखाता है, लेकिन कहते हैं कि नीचे स्थापित करना और कभी समाप्त नहीं होता है। किसी भी तरह यह मेरा अनुभव है कि इस कोशिश के बाद, Xcode 5.1.1।
कॉलिन लामरे

4

आयोजक में आप साझा करें पर क्लिक कर सकते हैं और iOS ऐप स्टोर पैकेज (.ipa) के रूप में सहेज सकते हैं। ऑर्गेनाइजर में आर्काइव जनरेट करने के लिए आपको 'प्रोडक्ट' मेन्यू से 'आर्काइव' भी चुनना पड़ सकता है। अंत में, मुझे लगता है कि आपको ऐसा करने के लिए एक उचित रूप से हस्ताक्षरित संग्रहीत निर्माण करना होगा।


3
यह पता लगाना आसान था कि परियोजना से पुरालेख कैसे बनाया जाए। समस्या यह है कि विकल्प साझा करते समय 'पैकेज' को धूसर कर दिया जाता है। आप सही हो सकते हैं कि संग्रह को ठीक से हस्ताक्षरित करना है ताकि विकल्प सक्षम हो। मैं वितरण Ad-Hoc के लिए कुंजी का उपयोग करता हूं और वितरण Ad-Hoc के लिए निर्दिष्ट एंटाइटेलमेंट भी है। क्या आप साझा कर सकते हैं कि आईपीए फाइल बनाना कैसे संभव है?
krasnyk

4

रूट-मी लाइब्रेरी के पुराने संस्करण का उपयोग करते हुए मुझे यही समस्या थी। मैंने सभी पुस्तकालयों, और पुस्तकालयों के अंदर पुस्तकालयों (proj4) को "छोड़ दिया", लेकिन मुझे अभी भी वही समस्या थी। उस रूट-मी और प्रोज 4 को सार्वजनिक हेडर फाइलें स्थापित कर रहे थे, तब भी जब पुस्तकालयों को छोड़ा जा रहा था, जो इसे उसी तरह से गड़बड़ कर रहा था! इसलिए मैं बस रूट-मी और प्रोज 4 के लक्ष्य "बिल्ड चरणों" टैब में गया, "हेडर कॉपी करें", "पब्लिक" खोला, और उन हेडर को "पब्लिक" से "प्रोजेक्ट" में खींच लिया। अब वे $ (BUILD) / usr / स्थानीय / शामिल में स्थापित नहीं होते हैं, और मैं संग्रह से एक ipa फ़ाइल बनाने में सक्षम हूँ!

मुझे आशा है कि Apple XCode के साथ इस भयानक प्रयोज्य समस्या को ठीक करता है। यह गलत क्या है का कोई संकेत नहीं देता है, यह सिर्फ काम नहीं करता है। मुझे मंद नियंत्रणों से नफरत है जो आपको इस बारे में कुछ नहीं बताते हैं कि वे क्यों मंद हो गए हैं। क्लिकों को अनदेखा करने के बजाय, अक्षम नियंत्रण आपको यह बताने का संदेश दे सकता है कि जब आप निराशा में उन पर क्लिक करते हैं तो वे नरक क्यों होते हैं?


हां! सार्वजनिक के रूप में चिह्नित सभी हेडर फाइलें समस्या करती हैं। प्रोजेक्ट के रूप में उन्हें सेट करने से समस्या ठीक हो गई!
JakubKnejzlik

3

मान लें कि आपने एक सफल उत्पाद> पुरालेख तब, ऑर्गनाइज़र से (Shift Apple 2) पर क्लिक करें अभिलेखागार।

अपने संग्रह का चयन करें। शेयर का चयन करें। "साझा करने के लिए सामग्री और विकल्पों का चयन करें:" में iPhone iOS वितरण के लिए "iOS ऐप स्टोर पैकेज (.ipa) और पहचान की सामग्री सेट करें"।

अगला पर क्लिक करें, एक ऐप नाम दर्ज करें और सहेजें पर क्लिक करें।

स्क्रीनशॉट के साथ पूर्ण गोर विवरण यहाँ हैं: Xcode4UserGuide


2

एक जिसने अन्य सभी उत्तरों की कोशिश की और कोई भाग्य नहीं था कृपया इस चेक बॉक्स को देखें, आशा है कि यह मदद करेगा (मेरे लिए चाल 6.0%)।

यहां छवि विवरण दर्ज करें


0

मुझे एक ही समस्या थी ... खरोंच से परियोजना को फिर से बनाना था।

नोट: मेरा प्रोजेक्ट XCode 3.1 में बनाया गया था और एक स्टैटिक लाइब्रेरी के खिलाफ लिंक कर रहा था जिसे सबप्रोजेक्ट (एक सामान्य गंतव्य के लिए) के रूप में बनाया जा रहा था। जब मैंने XCode 4 में XCode प्रोजेक्ट को दोबारा बनाया तो मैंने स्रोत बनाने के लिए इसे बदल दिया।

अब एक प्रोडक्ट / आर्काइव / शेयर ... करने से सीधे "एप्लीकेशन" (जो अब बाहर हो गया है) और "आर्काइव" (जो .xcarchive एक्सपोर्ट करता है) के ऊपर "iOS ऐप स्टोर पैकेज (.ipa)" का विकल्प मिलता है।


0

वही मुद्दा। मैंने प्रत्येक बाहरी परियोजनाओं के लिए YES को "स्किप इंस्टॉल" ध्वज की स्थापना का हल दिया, मुख्य परियोजना के अन्य लक्ष्यों को अपरिवर्तित छोड़ दिया।

मुझे "एडिट स्कीम ..." भी जाना था, "आर्काइविंग" पैनल चुनें और अपने एड-हॉक उद्देश्य के लिए सही बिल्ड सेटिंग सेट करें।

फिर एक साधारण उत्पाद -> पुरालेख -> शेयर ने अपेक्षित काम किया।


0

आपको अपने प्रोजेक्ट को बिल्ड और आर्काइव करना होगा। आपको यह जांचने की आवश्यकता हो सकती है कि परियोजना में आपके पास कौन सी कोड हस्ताक्षर सेटिंग्स हैं और निष्पादन योग्य हैं।

अपने संग्रह संस्करण का चयन करने के लिए आयोजक का उपयोग करें और फिर आप अपनी परियोजना के उस संस्करण को साझा कर सकते हैं। आपको फिर से हस्ताक्षर करने वाले सही कोड का चयन करना होगा। यह आपको .ipa फ़ाइल को सहेजने की अनुमति देगा जहाँ आप चाहते हैं।

ITunes में .ipa फ़ाइल को खींचें और छोड़ें और फिर अपने iPhone के साथ सिंक करें।


0

यदि यह एक खेल है (यह भी एप्लिकेशन हो सकता है) और आप Cocos2d या अन्य तृतीय पक्ष पुस्तकालय जैसे कुछ स्थिर पुस्तकालय हैं ... तो आप बस का चयन करने के लिए है * केवल * स्थिर पुस्तकालय (नहीं एपीपी) और के तहत अपने निर्माण सेटिंग्स में परिनियोजन, सेट छोड़ें ध्वज को स्थापित करें YESऔर इसे संग्रहीत करें और इसे नष्ट कर दें ... !!


0

मैं वही समस्या फेंक गया। ऊपर दिए गए किसी भी उत्तर ने मेरे लिए काम नहीं किया, लेकिन मैंने अपने आप ही समाधान ढूंढ लिया। IPa फ़ाइल इसलिए नहीं बनाई गई क्योंकि लक्ष्य में लाइब्रेरी फ़ाइलें (libXXX.a) थी-> चरण बनाएँ -> संसाधनों में प्रतिलिपि बनाएँ

आशा है कि यह किसी की मदद करेगा :)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.