मैंने अभी संस्करण उन्नयन और ऐप स्टोर के बारे में कुछ खोज लिया है। अभी, मैं आईओएस सिस्टम के व्यवहार के कारण मुद्दों और उपयोगकर्ताओं को दुर्घटनाग्रस्त कर रहा हूं जिन्हें मैं पहले नहीं समझ सकता। और, बहुत महत्वपूर्ण, आईट्यून्स, ऐपस्टोर और आईओएस ने पिछले संस्करणों में कुछ उन्नयन और नियमों को स्थापित किया है। अब, यह इस तरह से काम करता है: - जब उपयोगकर्ता एक नया संस्करण स्थापित करता है, तो बंडल की सभी फाइलें डाउनलोड की जाती हैं और पिछले मौजूदा बंडल में कॉपी की जाती हैं, लेकिन पुरानी फाइलें या घटक हटाए नहीं जाते हैं (या सभी हटाए नहीं जाते हैं)। तो, अंतिम बंडल नए संस्करण की ताजा स्थापना के बंडल के बराबर नहीं है। - उदाहरण के लिए, यदि xib/nib फ़ाइल को नए संस्करण के लिए अलग-अलग भाषाओं में स्थानीयकृत किया गया है, तो अपडेट किए गए बंडल में दोनों संस्करण शामिल होंगे: मूल फ़ोल्डर में से एक और दूसरा स्थान प्रत्येक स्थानीय फ़ोल्डर में। सिस्टम, स्पष्ट रूप से, पहले का उपयोग करेगा और केवल एक ताजा स्थापना उस फ़ाइल के लिए स्थानीयकरण दिखाएगी। मेरे ऐप्स में से एक यह दिखाता है कि मेनविंडो.एक्सिब के साथ समस्या और संदर्भ और कक्षाओं में कुछ संशोधन हैं, इसलिए जब भी आप इसे चलाने की कोशिश करते हैं तो अपडेट किए गए ऐप्स क्रैश होते हैं क्योंकि यह एक अप्रचलित वस्तु का उपयोग कर रहा है। मैंने एक नया संस्करण बनाया है जो xib/nib फ़ाइलों का नाम बदल रहा है जिन्हें स्थानीयकृत किया गया है। चूंकि मेनविंडो उनमें से एक है, मुझे निश्चित रूप से जानकारी में संदर्भ को संशोधित करना होगा।
ठीक है, यह जानकर, आप बंडल में पूर्ण विभिन्न घटकों के साथ एक नया संस्करण बना सकते हैं, यदि पिछले संस्करण की फ़ाइलें मौजूद हैं, तो ऐप उपयोगकर्ता को उनका उपयोग करने का विकल्प प्रदान करता है। यही है, एक आइकन और बंडल में ऐप के दो संस्करण। करना बहुत मुश्किल नहीं है।
लेकिन, बहुत अजीब चीज यह है कि मुझे लगता है कि नया आईओएस संस्करण और आईट्यून्स डाउनग्रेड की अनुमति नहीं देते हैं। मैंने ऐसा करने की कोशिश की है लेकिन इसे पूरा नहीं किया है। यही है, यदि आप एक संस्करण स्थापित करते हैं, उदाहरण के लिए 1.2, डिवाइस पर बाद में v1.1 इंस्टॉल करने के लिए AFAIK असंभव है और न ही आईट्यून्स -> "एप्लिकेशन" में। तो, डबल संस्करण बंडल ऐप की पुनर्स्थापन तक लाइव रहेगा।
बहुत ही जानकारीपूर्ण उत्तर गेबेरियल :) क्या आप कृपया मुझे स्क्लाइट भाग बता सकते हैं? वास्तव में क्या हुआ जब पुराने और नए संस्करण के समान नाम वर्ग फ़ाइल (abc.sqlite1.0 कहें)? मेरा ऐप नया संस्करण कैसे व्यवहार करेगा? क्या यह पुरानी स्क्लाइट ओवरराइड करेगा? या मुझे दोनों स्क्लाइट से डेटा मिलेगा। –
हां। मैंने जो कुछ कहा है वह ऐप बंडल में आइटमों के बारे में है। यदि दोनों के पास बंडल में एक ही नाम है, तो पुराना एक अपेक्षाकृत नए द्वारा प्रतिस्थापित किया जाता है। – Gabriel
@ गैब्रियल: क्या इसे बदलने से पहले पुराने डीबी से डेटा को कॉपी करने का कोई तरीका है? – Mrunal