2013-03-03 9 views
5

पर iOS5 के लिए प्रोजेक्ट बना मुझे बताओ कृपया, कैसे मैं अपने XCode 4.6 है, जहां सभी iOS6 के लिए बनाता है +XCode 4.6

में के लिए iOS5 + प्रोजेक्ट बना सकते हैं मैं बदल तैनाती लक्ष्य

enter image description here

और आधार एसडीके कैसे बदलते हैं? या शायद मैं इसे बदल नहीं सकता?

enter image description here

और मैं क्या कर सकता है, कि मेरे XCode मुझे चेतावनी दिखाने अगर मैं उपयोग के तरीकों, कि केवल iOS 6+ में इस्तेमाल किया जा सकता की कोशिश करेंगे?

उत्तर

6

सबसे पहले आपको कुछ चीजों को समझना चाहिए। परिनियोजन लक्ष्य वह न्यूनतम ओएस संस्करण है जो आपका ऐप समर्थन करता है। यदि आप आईओएस 5.0 में सेट करते हैं तो आप आश्वस्त कर सकते हैं कि यह आईओएस 5.0 और उससे ऊपर का समर्थन करता है। बेस एसडीके एसडीके है जिसका उपयोग आपके आवेदन को संकलित करने के लिए किया जाता है। हमेशा उपलब्ध नवीनतम एसडीके का उपयोग करें।

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

आप सशर्त संकलन का उपयोग कर सकते हैं। ऑटोलायआउट और स्ट्रिंग का उपयोग न करें याद रखें। जो ios5

+0

मेरे प्रोजेक्ट में परिनियोजन लक्ष्य 5.0 है। और मैं कैसे कर सकता हूं कि XCOde मुझे आईओएस 6+ के तरीकों या गुणों का उपयोग करने के बारे में चेतावनी देगा। अब मैं UITextView विशेषताकृत टेक्स्ट (यह संपत्ति केवल आईओएस 6 के लिए) जोड़ने के लिए प्रयास करता हूं और एक्सकोड ने मुझे चेतावनी नहीं दी – Neznajka

+0

यह एसडीके 6.0 का उपयोग करके आपके ऐप को संकलित करने के बाद चेतावनी नहीं देगा। यह उपलब्ध है IOS6 –

+0

इसलिए मुझे विधियों का उपयोग करने के लिए ट्रेस की आवश्यकता है? और अगर मैं केवल आईओएस 6 के लिए संपत्ति का उपयोग करता हूं, तो आईओएस 5 पर डिवाइस का उपयोग करके मेरा ऐप क्रैश हो जाएगा? – Neznajka

1

आपके पहले प्रश्न के लिए जहां तक ​​मुझे पता है कि आईओएस 5 एपीआई बाद के संस्करणों में भी समर्थित होगा। आपको यह सुनिश्चित करने के लिए आईओएस 5.0 (अपनी परियोजना लक्ष्य सेटिंग्स के माध्यम से) पर अपना लक्ष्य निर्धारित करना चाहिए कि आईओएस 6 विधियों में से कोई भी उपयोग नहीं किया जाता है (या फिर संकलन त्रुटि आपको इसे बनाने से रोकती है)।

  1. संकलन (ताकि आप अभी भी कम लक्ष्यों और नए के साथ मिलकर अपने अनुप्रयोग का निर्माण कर सकते हैं) के दौरान निम्नलिखित का उपयोग करें:

    आदेश नई सुविधाओं का समर्थन और देखें कि क्या iOS6 डिवाइस पर उपलब्ध है करने के लिए आपको दो तरीके हैं मैक्रो

#if __IPHONE_OS_VERSION_MIN_REQUIRED > __IPHONE_6_0 
// Your ios6 code goes here 
#endif 

2: [[[UIDevice currentDevice] systemVersion] floatValue] > 6.0

: रनटाइम के दौरान