क्या Xcode 5 पर iOS 6 SDK इंस्टॉल करना संभव है?


250

Xcode 5 में प्राथमिकताएं फलक हैं जो किसी को iPhone 6.1 सिम्युलेटर डाउनलोड करने की अनुमति देता है, हालांकि मुझे ऐसी जगह नहीं मिल सकती है जहां यह iOS 6 SDK को डाउनलोड करने की अनुमति देता है, इस प्रकार Xcode 5 के साथ विकसित होने पर सक्रिय SDK को iOS 6 में सेट करना संभव नहीं है वहाँ एक समाधान है कि Xcode 5 को iOS 6 SDK स्थापित करने की अनुमति होगी?

संपादित करें:

Workarounds अब जरूरी नहीं होना चाहिए कि Xcode 5 आम तौर पर उपलब्ध है और आपको एसडीके के पिछले संस्करणों को डाउनलोड करने की अनुमति देता है।

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


41
Xcode 5 में कई सुधारों का लाभ उठाने के लिए, जबकि आज भी ऐप स्टोर के लिए ऐप बनाने में सक्षम है।
टोनी

61
अरे मैडी, "आईओएस 7 एनीवेर्स को गले लगाने" की बात पूरी तरह से जीए रिलीज से जुड़ी नहीं है। ऐप की पूरी डिज़ाइन भाषा और UX को फ्लैट डिज़ाइन और फिर से डिज़ाइन किए गए iOS7 UI घटकों के अनुरूप बनाने के निर्णय और प्रयास न तो छोटे हैं, और न ही किसी व्यवसाय और समय के नज़रिए से आसानी से आ सकते हैं। SDK 6.1 के विरुद्ध भवन में iOS7 में iOS 6 की UI डिज़ाइन भाषा और पूर्व (बैकवर्ड सपोर्ट प्रयोजनों के लिए) का उपयोग होगा। इस प्रकार यह बहुत अच्छी तरह से वारंट हो सकता है कि हम आने वाले कुछ अच्छे समय के लिए 6.1 एसडीके के खिलाफ एक्सकोड 5 में विकास करना चाहते हैं।
मार्ची

2
hmmm शायद क्योंकि वह उम्मीद करता है कि कोड के एक अखंड ढेर के बजाय एसडीके को आईडीई से अलग किया जाए?
फ्रेडहेड

1
मैं वर्तमान में एक ऐसे ग्राहक के साथ काम कर रहा हूं जो IOS7 UI परिवर्तनों को अपनाने के लिए तैयार नहीं है, लेकिन XCode 5 में कोर डेटा माइग्रेशन सुधारों से लाभ उठा सकता है। तो इस मामले में, यह वही है जो मैं भी चाहता हूं।
Droid Chris

कोई सोच सकता है कि Xcode, अगर SDK 6.1 शामिल नहीं है, तो कम से कम इसे आसानी से एकीकृत करेगा। लेकिन फिर यह समस्या है
जॉनके

जवाबों:


203

EDIT: 1 फरवरी 2014 से, ऐप्पल ऐप स्टोर में जमा करने के लिए पूर्व-iOS7 ऐप स्वीकार नहीं करेगा। इसलिए जब यह तकनीक अभी भी काम करती है, तो यह अधिकांश पाठकों के लिए उपयोगी नहीं होगी।


हां, यह ठीक है। मैं अभी भी एक परियोजना के लिए आईओएस 4.3 के साथ निर्माण करता हूं (जब से हमने अपडेट किया है, कुछ समय हो गया है; लेकिन आईओएस 6 के बाहर आने के बाद भी वे इसे स्वीकार करते हैं), और मैं वर्तमान में एक्सकोड 5 के साथ 10.5 ऐप का निर्माण करता हूं।

देखें कि एक पुराने एसडीके को एक्सकोड कैसे इंगित किया जाए ताकि इसे "बेस एसडीके" के रूप में इस्तेमाल किया जा सके? इसे कैसे सेट किया जाए, इसके विवरण के लिए। जब भी आप अपग्रेड करते हैं, तो हर चीज को लिंक करने के लिए आप मेरी फिक्स-एक्सकोड स्क्रिप्ट का उपयोग कर सकते हैं ।

पुरानी एसडीके को केवल चाल मिल रही है। यदि आपके पास उनके पास नहीं है, तो आपको आम तौर पर Xcode के पुराने संस्करणों को डाउनलोड करने की आवश्यकता है (अभी भी developer.apple.com पर उपलब्ध है ), इंस्टॉलर पैकेज खोलें, और एसडीके को खोजने के लिए आप की जरूरत है।

SDKs को इंस्टॉलर पैकेज में पाया जा सकता है:

Xcode.app/Contents/Developer/Platforms/


क्या आपको यह सुनिश्चित करने के लिए iOS 7 SDK को हटाने की ज़रूरत है कि यह iOS 6 SDK के साथ निर्मित हो?
ओयोन

6
नमस्ते। यह करीब है, लेकिन मेरे लिए काफी नहीं है। बटन iOS 6 की तरह दिखते हैं, लेकिन व्यू कंट्रोलर कंटेंट UINavigationController का उपयोग करते समय अभी भी नेविगेशन बार के पीछे चला जाता है। आईओएस 6 व्यवहार कैसे प्राप्त करें इसके बारे में कोई विचार?
मैट बेज़ार्क

2
नहीं; आप इसे केवल डिवाइस पर देखेंगे। IOS 7 सिम्युलेटर में iOS 6 संगतता मोड नहीं है। यदि आप देखना चाहते हैं कि यह सिम्युलेटर में कैसा दिखता है, तो आईओएस 6 सिम्युलेटर पर परीक्षण करें।
रॉब नेपियर

1
क्या मैं उस ऐप को सबमिट कर सकता हूं जो Xcode 5 और iOS 6 SDK के साथ ऐप स्टोर में बनाया गया है?
हुजुनफेंग

1
जब तक iPad 1 अभी भी समर्थित है आप हमेशा मान सकते हैं कि Apple 5.X iOS को स्वीकार करेगा। इसे अपग्रेड नहीं किया जा सकता है।
आह्वान १६'१३

60

मैं भी एक ही समस्या चल रहा था जब मैं xcode 5 को अद्यतन किया यह पुराने एसडीके हटा दिया। लेकिन मैंने पुराने एसडीके की कॉपी दूसरे कंप्यूटर से ली थी और आप नीचे दिए गए लिंक से डाउनलोड कर सकते हैं।

http://www.4saring.com/zip/NlPgsxz6/iPhoneOS61sdk.html
(www.4sared.com परीक्षण खाता test@yopmail.com/test)

इसके साथ काम करने के 2 तरीके हैं।

1) इस फ़ोल्डर को /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs पर अनज़िप और पेस्ट करें और Xcode को पुनरारंभ करें।

यदि आप Xcode अपडेट करते हैं तो इसे Xcode द्वारा फिर से हटाया जा सकता है।

2) एक और तरीका है अनज़िप और पेस्ट जहां आप चाहते हैं और /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs पर जाएं और यहां एक प्रतीकात्मक लिंक बनाएं, ताकि एसडीके एक ही बना रहे। आप Xcode अपडेट करें।

एक और बदलाव जो मैंने किया, सेटिंग सेट करना> आर्किटेक्चर> मानक (64 नहीं) इसलिए तैनाती लक्ष्य के सभी संस्करणों को सूचीबद्ध करें

यदि आप केवल तैनाती लक्ष्य को बदलना चाहते हैं तो ज़िप डाउनलोड करने की आवश्यकता नहीं है।

यहाँ कुछ स्क्रीनशॉट हैं। यहां छवि विवरण दर्ज करें यहां छवि विवरण दर्ज करें


2
आपने यह ios6.1 sdk कैसे और कहां से डाउनलोड किया? मैं अपने Xcode 5 के खिलाफ चलने के लिए iOS 5 sdk की तलाश कर रहा हूं। क्या आप या तो मुझे अपलोड कर सकते हैं या उस बिंदु को इंगित कर सकते हैं जहां मैं इसे स्वयं डाउनलोड कर सकता हूं। साभार
सैम बी

दरअसल, मैं पुरानी व्यवस्था भी कर रहा हूं। इसलिए मैंने इसे पुराने xcode से लिया। वही मैंने ios sdk 5 के लिए कोशिश की, लेकिन जितनी जरूरत नहीं थी मैंने उससे बाहर निकलने की कोशिश नहीं की। इसके अलावा, यदि यह उत्तर अच्छा लगता है, तो मैं + या - के संदर्भ में आपकी प्रतिक्रिया को महत्व देता हूं। धन्यवाद।
अवतारसिंह सुचारी

1
हे अवतार, मैंने आपका ios6 ज़िप डाउनलोड किया, इसे स्थान पथ के तहत खोल दिया जिसे आपने सूचीबद्ध किया था, xcode 5 को पूरी तरह से बंद कर दिया, इसे फिर से लॉन्च किया और फिर भी मुझे ड्रॉप डाउन विकल्प में केवल 7.0 के रूप में तैनाती योग्य लक्ष्य दिखाई देता है। मुझे लगता है कि वहाँ गायब कदम हैं और वहाँ अधिक है?
सैम बी

मेरे लिए वही काम कर रहा है। बस एक सवाल, क्या आपने इसे xcode ऐप में जोड़ा है या एक प्रतीकात्मक लिंक बनाया है?
अवतारसिंह सुचारी

सीधे app खुद को dir।
सैम बी

34

हां, मैंने आज ही समस्या का समाधान किया है।

  1. अपने या अपने दोस्त के पुराने Xcode डायरेक्टरी में iPhoneOS6.1.sdk की तरह SDK फाइल खोजें।
  2. कॉपी करें और इसे Xcode 5 निर्देशिका में डालें: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs।

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

फिर आप नीचे जैसा एसडीके चुन सकते हैं:

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

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


2
मैंने ऐसा ही किया लेकिन मेरी GUI ऐप बदल गई और यह iOS 7 GUI जैसा दिखता है। मेरे पास ऐप चलाने के लिए iPhone रेटिना (4 इंच 64-बिट) सिम्युलेटर है। मुझे ऐसा करने के बाद कुछ और याद आ रहा है।
अजगर

20

ढूँढें और पुराने एसडीके डाउनलोड करें। पुराने एसडीके यहां पाए जाते हैं

मैंने Xcode.app निर्देशिका को Xcode_4.6.3.app के रूप में कॉपी किया है।

अब आप दोनों xcode संस्करणों में परीक्षण और डीबग कर सकते हैं। आपको उन्हें संबंधित फ़ोल्डरों से चलाना होगा या अपने डेस्कटॉप में शॉर्टकट बनाने होंगे। जब कमांड लाइन से निर्माण किया जाता है तो iPhoneOS6.1इसके बजाय पैरामीटर देंiPhoneOS7.0

इसने मेरे लिए Xcode5 और iOS में बहुत अच्छा काम किया।

Xcode5 के SDK dir में जाएं। आम तौर पर यहां स्थित है:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs

इस तरह पुराने एसडीके के लिए एक प्रतीकात्मक लिंक जोड़ें:

sudo ln -s /Applications/Xcode_4.6.3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk iPhoneOS6.1.sdk

या कमांड लाइन में कहीं से भी अधिक सटीक,

sudo ln -s /Applications/Xcode_4.6.3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk  /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk

हम इस विकल्प का उपयोग अपने ऐप का परीक्षण करने के लिए कर सकते हैं, लेकिन शायद feb 2014 के बाद, पूर्व iOS 7 sdk के साथ बनाया गया कोई भी ऐप ऐप स्टोर में स्वीकार नहीं किया जाएगा!
करीम

11

आप पुराने एसडीके को डाउनलोड कर सकते हैं और इसे इंस्टॉल कर सकते हैं

Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/

फ़ोल्डर। लॉगआउट + लॉगिन केवल यह सुनिश्चित करने के लिए कि परिवर्तन प्रभावी हों और आपको अपने नए XCode में पुराने SDK को देखना चाहिए


मैंने ऐसा किया है (पहले उत्तर में डाउनलोड लिंक का उपयोग करके), और iOS 6.1 sdk पसंद बिल्ड सेटिंग्स> आर्किटेक्चर> बेस एसडीके के तहत xcode 5 में दिखाई देता है। हालाँकि, जब मैं iOS 7 सिम्युलेटर (या iOS 7 डिवाइस) का निर्माण और रन करता हूं तो यह अभी भी iOS 7 UIKit बटन (iOS 6 संस्करण नहीं) का उपयोग कर रहा है। अगर किसी के पास कोई सुझाव है तो क्यों, मैं आभारी रहूंगा ....
बिल पैटरसन

यदि आपके पास TimeMachine स्थापित है, तो आप उपरोक्त पथ को खोल सकते हैं (टर्मिनल प्रकार में: "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer.SDKs/") खोलें और वहां से iOS6.1 SDK को पुनर्स्थापित करें ।
अवांस

11

बस जोड़ने के लिए, आप वास्तव में एक्सकोड 5 के साथ सिम्युलेटर के पुराने संस्करणों को डाउनलोड कर सकते हैं - बस वरीयताओं पर जाएं और आप उन्हें डाउनलोड के तहत पाएंगे:

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


यह तब से हुआ होगा जब xcode 5 बीटा से बाहर आया था और अब यह एक सामान्य रिलीज़ है। जानने के लिए अच्छा है, धन्यवाद स्माइकी
टोनी

5
@ मैनी यह पुराने एपीआई के खिलाफ संकलन के समान नहीं है। आप iOS 6 के लिए नए एपीआई का उपयोग कर निर्माण कर रहे हैं
oligofren

ये विकल्प Xcode 6 पर डिफ़ॉल्ट रूप से प्रकट नहीं होते हैं, भले ही आपने एक पुराना लक्ष्य प्लेटफ़ॉर्म सेट किया हो।
गाइल्समिडलटन

10
  • Apple देव केंद्र से Xcode 4.6.x डाउनलोड करें : https://developer.apple.com/downloads/index.action
  • एप्लिकेशन फ़ोल्डर के भीतर Xcode4 नामक एक फ़ोल्डर बनाएँ और वहां डाउनलोड किए गए dmg को ड्रैग-एन-ड्रॉप करें।
  • एक टर्मिनल विंडो खोलें

    $sudo cp -R /Applications/Xcode4/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/
  • जब से आप एक सिस्टम फ़ोल्डर के अंदर हैं, आपको एक पासवर्ड दर्ज करने के लिए संकेत दिया जाएगा

  • Xcode 5 खोलें और अब आपको दोनों SDK देखने चाहिए

10

बस मेरे लिए सबसे आसान उपाय:

  1. उदाहरण के लिए xcode के पुराने संस्करण में "iPhoneOS6.1 sdk" जैसे पुराने SDK का पता लगाएँ। यदि आपने ऐसा नहीं किया है, तो आप इसे इस पते पर Apple डेवलपर सर्वर से डाउन लोड कर सकते हैं : https://developer.apple.com/downloads/index.action?name=Xcode जब आप xcodeatalogg खोलते हैं तो आप इसे खोलकर पा सकते हैं Xcode.app (राइट क्लिक और "शो कंटेंट") और सामग्री / डेवलपर / प्लेटफार्म / iPhoneOS.platform / डेवलपर / SDKs / iPhoneOS6.1 sdk पर जाएं यहां छवि विवरण दर्ज करें
  2. सरल फ़ोल्डर iPhoneOS6.X एसडीके को कॉपी करें और अपने xcode.app में पेस्ट करें
    • एप्लिकेशन फ़ोल्डर में अपने xcode.app पर राइट क्लिक करें।
    • सामग्री / डेवलपर / प्लेटफ़ॉर्म / iPhoneOS.platform / डेवलपर / एसडीके / पर जाएं
    • बस यहाँ पेस्ट करें।

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

  1. अपना xcode ऐप बंद करें और उसे फिर से खोलें।

अपने सिम्युलेटर में iOS 6 में एक ऐप का परीक्षण करने के लिए: - बस अपने सक्रिय किन्नर में iOS 6.0 चुनें। यहां छवि विवरण दर्ज करें

IOS 6 में अपना ऐप बनाने के लिए, इसलिए आपके ऐप का डिज़ाइन iOS 7 के साथ iPhone पर पुराना डिज़ाइन होगा: - Target में iOS6.1 चुनें - बेस SDK

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

बस ध्यान दें: जब आप अपने एसडीके में बेस एसडीके बदलते हैं, तो आईओएस 7.0 सिम्युलेटर पर निर्माण के लिए अब उपलब्ध नहीं होगा!


9

यह कर सकते हैं , लेकिन वास्तव में आवश्यक नहीं है

यह कैसे करना है

जेसन ली को जवाब मिल गया। XCode स्थापित करते समय मैंने उन्हें प्रतिस्थापित करने के बजाय पिछले प्रतिष्ठानों को रखना पसंद किया। तो मैं अपने स्थापना फ़ोल्डर में ये हैं

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

इसलिए /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKsअलग-अलग एसडीके रखें। (सही संख्या के साथ Xcode.app बदलें) पिछले sdks को कॉपी करें

/Applications/Xcode 3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs

एक कॉपी करने के बाद यहां मेरा फ़ोल्डर है।

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

अब xCode को पुनरारंभ करें और आप sdks के पिछले संस्करणों को आधार sdk के रूप में सेट कर सकते हैं।

यह आवश्यक क्यों नहीं है

Apple Documentaion का संदर्भ लेना

Xcode प्रोजेक्ट के लिए किसी विशेष SDK का उपयोग करने के लिए, अपनी प्रोजेक्ट की बिल्ड सेटिंग्स में दो चयन करें।

  1. परिनियोजन लक्ष्य चुनें

    यह सबसे शुरुआती OS संस्करण की पहचान करता है, जिस पर आपका सॉफ्टवेयर चल सकता है।

  2. एक आधार एसडीके चुनें

    आपका सॉफ्टवेयर OS संस्करणों में उपलब्ध सुविधाओं का उपयोग कर सकता है और आधार एसडीके के अनुरूप एक को शामिल कर सकता है। डिफ़ॉल्ट रूप से, Xcode Xcode द्वारा समर्थित नवीनतम OS पर सेट होता है।

नियम का उपयोग आधार एसडीके के रूप में नवीनतम है और चलाने के लिए आवश्यक न्यूनतम संस्करण ऐप के लिए तैनाती लक्ष्य निर्धारित करें

उदाहरण के लिए आप iOS 7 को बेस एसडीके के रूप में उपयोग कर सकते हैं और आईओएस 6 को तैनाती लक्ष्य के रूप में सेट कर सकते हैं। IOS 6 सिम्युलेटर पर परीक्षण के लिए चलाएं कि यह iOS 6 पर कैसे काम करता है। सिमुलेटर की सूची के साथ उपलब्ध नहीं होने पर सिम्युलेटर स्थापित करें।

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

अतिरिक्त आप iOS 6 तक बिना शर्त के सुविधाओं का उपयोग कर सकते हैं और पिछले संस्करणों का समर्थन करते हुए नए अपडेट किए गए उपकरणों के लिए iOS 7 की नई सुविधाओं का समर्थन कर सकते हैं।

यह प्रयोग किया जा सकता दुर्बलता से लिंक्ड क्लासेस , दुर्बलता से लिंक्ड तरीके , कार्य , और प्रतीकों

https://developer.apple.com/library/ios/documentation/developertools/conceptual/cross_development/Using/using.html#//apple_ref/doc/uid/20002000-SW3

कमजोर जोड़ने

मान लीजिए कि Xcode में आप iOS6 में तैनाती लक्ष्य (न्यूनतम आवश्यक संस्करण) और iOS7 के लिए SDK (अधिकतम अनुमत संस्करण) को निर्धारित करते हैं। संकलन के दौरान, कंपाइलर किसी भी इंटरफेस को कमजोर रूप से लिंक करेगा जो iOS7 में पेश किए गए थे जबकि पहले के इंटरफेस को मजबूती से जोड़ रहे थे। यह आपके एप्लिकेशन को iOS6 पर जारी रखने की अनुमति देगा, लेकिन फिर भी जब वे उपलब्ध हों तो नई सुविधाओं का लाभ उठाएं।


4

यहाँ अन्य उत्तर भी सही हैं, लेकिन मुझे निम्नलिखित चरण सबसे आसान लगे:

बस देवकोड लिंक से Xcode 4.6.3 डाउनलोड करें जो कहता है "Xcode के पुराने संस्करण की तलाश है?" (वर्तमान में यहां इंगित करता है ) और dmg माउंट करें।

फिर टर्मिनल में, SDK फ़ाइलों को कॉपी करें:

cp -R /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/

अंत में, एक्सकोड को पुनः लोड करें और आपका काम हो गया।


3

मेरे ऐप को Xcode 5 को मूल रूप से परिवर्तित किया गया था क्योंकि यह अभी भी मूल iOS परिनियोजन लक्ष्य के साथ बना सकता है जिसे आपने प्रोजेक्ट में सेट किया था (मेरे मामले में 5.1)। यदि नया एसडीके कुछ असाध्य समस्या का कारण नहीं बनता है, तो इसका उपयोग क्यों न करें? निश्चित रूप से हुड के तहत कई सुधार हैं।

उदाहरण के लिए, मैं Xcode 4.6.3 के बजाय Xcode 5 का उपयोग करना ज्यादा पसंद करूंगा। क्यों? मैं बहुत अधिक बैटरी जीवन प्राप्त करूंगा क्योंकि Xcode 5 में पाठ / कोड क्षेत्रों की UI स्क्रॉलिंग अब संपूर्ण CPU थ्रेड को चबाती नहीं है।


कारण नहीं है - Xcode 5 इस समय बहुत अस्थिर है। मेरे लिए प्रति घंटा क्रैशिंग। इसके अलावा कुछ अजीब स्थिति और कुछ मुद्दों में रंग के मुद्दे (हालांकि ठीक करने के लिए बहुत काम नहीं)
निक एच 247

2

अन्य उत्तरों में वर्णित 6.1 SDK को Xcode 5 में जोड़ना एक चरण है। हालाँकि यह अभी भी उस समस्या को हल नहीं करता है जो iOS 7 पर चल रहे नए UI तत्वों को लिया जाता है, व्यू कंट्रोलर को पूर्ण आकार का बनाया जाता है आदि।

जैसा कि इस उत्तर में बताया गया है कि iOS 7 पर UI को विरासत मोड में बदलना भी आवश्यक है:

[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"UIUseLegacyUI"];
[[NSUserDefaults standardUserDefaults] synchronize];

खबरदार: यह एक अनिर्दिष्ट कुंजी है और ऐप स्टोर के निर्माण के लिए अनुशंसित नहीं है!

इसके अलावा, मेरे अनुभव में डिवाइस पर परीक्षण के दौरान मैंने पाया कि यह केवल दूसरी बार काम करता है जब मैं ऐप लॉन्च करता हूं, भले ही मैं ऐप लॉन्च में कोड को काफी जल्दी चला रहा हूं, में +[AppDelegate initialize]। इसके अलावा Xcode 4.6 के उपयोग से निर्मित संस्करण में सूक्ष्म अंतर हैं। उदाहरण के लिए, पारदर्शी नेविगेशन बार अलग तरीके से व्यवहार करते हैं (जिससे दृश्य पूर्ण आकार का होता है)।

हालाँकि, चूंकि Xcode 4.6.3 Mavericks पर क्रैश होता है (कम से कम मेरे लिए, rdar: // 15318883 देखें ), यह डिबगिंग के लिए Xcode 5 का उपयोग जारी रखने के लिए कम से कम एक समाधान है।


1

मैंने XCode 4 को डाउनलोड किया और iOS 6.1 SDK को XCode 5 से लिया जैसा कि अन्य उत्तरों में वर्णित है। फिर मैंने iOS 6.1 सिम्युलेटर भी स्थापित किया (यह वरीयताओं में उपलब्ध था)। मैंने प्रोजेक्ट सेटिंग्स में बेस एसडीके को iOS 6.1 पर भी स्विच किया।

इन सभी जोड़तोड़ के बाद iOS 7 सिम्युलेटर में 6.1 बेस एसडीके के साथ प्रोजेक्ट क्षमता मोड में चलता है।


1

1 फरवरी से Apple केवल iOS6 या उससे कम के लिए बनाए गए ऐप को अस्वीकार कर देगा। यहाँ Apple का आधिकारिक संचार भी है । IOS7 के लिए बेहतर स्टार्ट बिल्डिंग।

मेरे कथन को स्पष्ट करने के लिए: यदि आप iOS6 या उससे कम के लिए निर्माण करते हैं, तो Apple आपके ऐप को अस्वीकार कर देगा। यदि आप iOS7 के लिए निर्माण करते हैं और सब कुछ ठीक है, तो इसका मतलब है:

  1. आपको xcode5 का उपयोग करना चाहिए
  2. आपको कम से कम iOS7 पर तैनात होना चाहिए।

Apple ईमेल की सामग्री मुझ पर बहुत स्पष्ट है

"सुनिश्चित करें कि आपके ऐप्स iOS 7 में नवीन तकनीकों के साथ सहज रूप से काम करते हैं। 1 फरवरी से ऐप स्टोर में जमा किए गए नए ऐप और ऐप अपडेट को Xcode 5 और iOS 7 SDK के साथ बनाया जाना चाहिए।"


हां, लेकिन iOS 6 SDK iOS 7 के साथ भी अच्छा काम करता है। कुछ ऐप्स को स्विच करने के लिए वास्तव में दर्द होता है।
अनिरुद्ध जोशी

मेरा मानना ​​है कि आप गलत हैं। Apple की आवश्यकता है (a) नवीनतम Xcode 5 द्वारा निर्मित, और (b) iOS 7 के लिए अनुकूलित । लिंक के लिए रोब नेपियर के उत्तर पर मेरी टिप्पणी देखें ।
बेसिल बोर्के

हम में से कुछ एंटरप्राइज़ वितरण के लिए विकसित होते हैं और पुराने एसडीके (और उपकरणों) को लक्षित करने की आवश्यकता होती है। एंटरप्राइज़ ऐप्स Apple समीक्षा प्रक्रिया और / या ऐप स्टोर के माध्यम से नहीं जाते हैं, और यह चर्चा काफी उपयोगी है, प्रासंगिक बनी हुई है, और भविष्य में प्रासंगिक बनी रहेगी। मैं आपके दृष्टिकोण को समझता हूं, लेकिन यह केवल एक ही नहीं है।
केविन ओमार

तुम पूर्ण रूप से सही हो!!! मैंने उद्यम वितरण के बारे में नहीं सोचा था। लेकिन यह मत भूलो कि आप अभी भी iOS6 पर नए Xcode के साथ तैनाती लक्ष्य निर्धारित करके, ios7 अनुकूलन और समीक्षा प्रक्रिया की परवाह किए बिना तैनात कर सकते हैं।
एंड्रिया

0

मेरे पास वर्तमान में Xcode 4.6.3 और 5.0 स्थापित है। मैंने 5.0 संस्करण को पुराने संस्करण में एसडीके से जोड़ने के लिए निम्नलिखित बैश स्क्रिप्ट का उपयोग किया:

platforms_path="$1/Contents/Developer/Platforms";
if [ -d $platforms_path ]; then
    for platform in `ls $platforms_path`
    do
        sudo ln -sf $platforms_path/$platform/Developer/SDKs/* $(xcode-select --print-path)/Platforms/$platform/Developer/SDKs;
    done;
fi;

आपको बस इसे .app के पथ के साथ आपूर्ति करने की आवश्यकता है:

./xcode.sh /Applications/Xcode-463.app

ध्यान दें कि 5.1 में अपग्रेड करने से मेरे 7.0.x एसडीके को हटा दिया गया और इसे 7.1 एसडीके के साथ बदल दिया गया। मेरी एक पुरानी स्थापना है Xcode5-DP6कि मैं 7.0.x को पुनर्प्राप्त करने में सक्षम था, लेकिन यह नवीनतम Xcode संस्करण को अपग्रेड करने या स्थापित करने से पहले SDK dirs (या पूरी तरह से ऐप का नाम बदलने) का बैकअप लेने के लिए एक अच्छा अनुस्मारक है।
वेन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.