2008-12-19 12 views
7

वर्तमान (दिसंबर 2008 तक) आईफोन एसडीके मुझे एक ऐप बनाने के लिए 3 संस्करणों के बीच चुनने की अनुमति देता है: 2.0, 2.1, 2.2। - मैं नीचे 2.1 को अनदेखा कर दूंगा।मैं किस आईफोन "सक्रिय एसडीके" संस्करण का उपयोग करना चाहिए?

मेरे मान्यताओं: 2.0 के बाद से

  • 2,2 2,0 से उपलब्ध अधिक एपीआई कार्य करता है,
  • 2.2 तय किया है कीड़े,
  • 2.2 साथ पार्श्व-संगत है 2.0 (दोनों के निर्माण और संचालन के लिए),
  • अगर मैं एसडीके 2.0 के साथ निर्माण, मेरे ऐप iPhone 2.2 पर काम करेंगे,
  • अगर मैं एसडीके 2.2 के साथ निर्माण, मेरे ऐप iPhone 2.0 पर काम नहीं करेगा।

मुझे लगता है कि होता है कि जल्द से जल्द संस्करण है कि एप्लिकेशन सबसे अच्छा होगा, इस तरह से यह पुराने OSes चल आईफ़ोन पर चलेगा निर्माण कर सकते हैं का उपयोग कर।

लेकिन क्या कोई जोखिम है कि अगर मैं इसे 2.0 के साथ बनाया गया तो मेरा ऐप कुछ खो जाएगा? शायद कुछ गति या अच्छे यूआई तत्व। लेकिन शायद इसके बारे में चिंता करने के लिए 2.0 और 2.2 के बीच इतना अंतर नहीं है?

तो मेरा सवाल है: मुझे कौन सा एसडीके चुनना चाहिए?

  1. earlist एसडीके मैं, के साथ निर्माण कर सकते हैं मेरी लक्षित बाजार को व्यापक बनाने की।
  2. नवीनतम एसडीके हमेशा, ताकि मेरा ऐप सुधार से लाभ उठा सके - संभावित रूप से मेरे बाजार को कम करने की लागत पर। 2.0 के लिए यह संकलन -

उत्तर

2

मैं विकल्प # 1 चुनते थे (और अगर जवाब स्पष्ट है, कारण है कि मैं एक विकल्प ?! होती हैं)। हम अपने ऐप के लिए यही करते हैं। अभी भी बहुत सारे लोग पुराने 2.0 ओ/एस चला रहे हैं और यदि आप 2.2 तक संकलित करते हैं तो आपका ऐप उनके डिवाइस पर नहीं चलेगा।

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

+0

नोट 3.0 में परिवर्तन है कि 2.0 के साथ संगत नहीं हैं देखते हैं कि (ताकि आप कम से कम उस स्तर का उपयोग करने की आवश्यकता हो सकती) - 0 आप आवेदन बिल्ला कार्यक्षमता का उपयोग नहीं कर पाएंगे ऐप्स (कम से कम बीटा में)। मुझे लगता है कि यह सबसे कम कॉमोन डेनोमीटर जितना आसान नहीं है, हालांकि मार्क की सलाह अच्छी है। –

27

आप आईफोन ओएस 2.2 एसडीके का उपयोग कर सकते हैं और अभी भी आईफोन ओएस 2.0 के लिए संकलित कर सकते हैं; जिस तरह से आप यह मैक ओएस एक्स के एसडीके के लिए के रूप में ही है आप का उपयोग सबसे हाल ही में ओएस आप से उपयोग एपीआई करना चाहते हैं के संस्करण को निर्धारित करता है, जबकि तैनाती लक्ष्य आप उपयोग निर्धारित करता है ओएस के कम से कम संस्करण जो आप पर चलाना चाहते हैं। इन दोनों को आम तौर पर एक्सकोड में परियोजना स्तर पर सेट किया जाना चाहिए।

तो आप आईफोन ओएस 2.2 एसडीके के खिलाफ अपना सॉफ्टवेयर बना सकते हैं और 2.2 या बाद में स्थापित डिवाइस पर चलते समय 2.2 फीचर्स का उपयोग कर सकते हैं। लेकिन आप अपने परिनियोजन लक्ष्य को 2.0 और पर सेट कर सकते हैं 2.2 डिवाइस का उपयोग पूर्व-2.2 ऑपरेटिंग सिस्टम के साथ डिवाइस पर चलते समय और आपके एप्लिकेशन को ठीक काम करना चाहिए।

+1

आपका उत्तर वास्तव में यहां स्वीकार किया जाना चाहिए, यह निश्चित रूप से सबसे अच्छा है! यहां तक ​​कि लंबे समय तक डेवलपर्स को उस ज्ञान की कमी है। और जैसा कि आपने निहित किया है, यदि आप गतिशील रूप से तय करते हैं कि कौन सी विशेषताओं का उपयोग करना है (रनटाइम पर, संकलन समय पर नहीं), तो आप 2.2 सुविधाओं का उपयोग कर सकते हैं और अभी भी 2.0 पर चल सकते हैं (बस उन सुविधाओं का उपयोग करने की कोशिश न करें)। हम 10.5/10.6 सुविधाओं का उपयोग करने के लिए भी ऐसा करते हैं और अभी भी 10.4 पर चलते हैं। – Mecki

+0

@ मेकी: तो संक्षेप में आप एन कोड पथ के साथ एक ही एप्लिकेशन बनाते हैं, या तो प्रति ओएस संशोधन में सुविधाओं को सक्षम/अक्षम कर सकते हैं, या विभिन्न संस्करणों के लिए उन्हें अलग-अलग कार्यान्वित कर सकते हैं? पसंद है ... लेकिन कौन पिछड़ा संगतता कहा था आसान था! – Bogatyr

+0

@ बोगेटिर: किसी भी तरह से। आप यह तय कर सकते हैं कि सुविधा केवल ओएस है> 10.5। तो आपके पास 10.5/10.6 है, यह सुविधा काम करती है, आपके पास 10.4 है, यह नहीं है। या आप वैकल्पिक कोड की पेशकश कर सकते हैं; 10.5/10.6 में दृश्य एक सुंदर एनीमेशन के साथ बदलता है, 10.4 में यह सिर्फ "स्वैप" होता है (कार्यक्षमता में कोई नुकसान नहीं होता है, यह केवल कम सुंदर दिखता है)। आम तौर पर यह केवल एक ही होता है, ओएस संस्करण की जांच कर रहा है और फिर या तो ऐसा करता है या ऐसा करता है और ऐसा करता है या तो कुछ भी नहीं हो सकता है या कोई संदेश "समर्थित नहीं है" या यह एक कम सुरुचिपूर्ण, लेकिन कार्यात्मक समकक्ष विकल्प हो सकता है। – Mecki

0

मेरे परीक्षण में, यदि आप 2 का उपयोग करते हैं।कि 2.1 में प्रकट होता है

टिम

+0

मैं 2.0 बिल्ड के साथ बैज कार्यक्षमता का उपयोग करने में सक्षम था। दस्तावेज़ीकरण का कहना है कि UIApplication.applicationIconBadgeNumber "आईफोन ओएस 2.0 और बाद में उपलब्ध है।" या आप किसी और चीज का जिक्र कर रहे हैं? – squelart

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