ऐप्लिकेशन के अपडेट कैसे काम करते हैं

इस गाइड में बताया गया है कि Android प्लैटफ़ॉर्म और Google Play, ऐप्लिकेशन के अपडेट को कैसे मैनेज करते हैं. इसमें उन डेवलपर के लिए उपलब्ध अलग-अलग विकल्पों के बारे में भी बताया गया है जो अपने ऐप्लिकेशन को कई ऐप्लिकेशन स्टोर पर पब्लिश करते हैं.

Android, ऐप्लिकेशन के अपडेट को कैसे मैनेज करता है

हर Android ऐप्लिकेशन का एक यूनीक ऐप्लिकेशन आईडी होता है. यह Java या Kotlin पैकेज के नाम की तरह दिखता है. जैसे, com.example.myapp. इस आईडी से, डिवाइस पर मौजूद हर ऐप्लिकेशन की खास तौर पर पहचान की जाती है. Android डिवाइसों पर, एक समय में किसी ऐप्लिकेशन आईडी वाला सिर्फ़ एक ऐप्लिकेशन इंस्टॉल किया जा सकता है.

Android प्लैटफ़ॉर्म पर अपडेट स्वीकार किए जाने के लिए, ये शर्तें पूरी होनी चाहिए:

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

ध्यान दें कि अगर अपडेट में एक ही साइनिंग सर्टिफ़िकेट और एक जैसा या उससे ज़्यादा वर्शन कोड है, तो अलग-अलग इंस्टॉलर को ऐप्लिकेशन अपडेट करने से रोकने के लिए कोई सुविधा उपलब्ध नहीं है.

ऊपर दी गई शर्तों को पूरा न करने वाले ऐप्लिकेशन को इंस्टॉल करने के लिए, उपयोगकर्ता को पहले मौजूदा वर्शन को अनइंस्टॉल करना होगा. इससे डिवाइस से ऐप्लिकेशन का पूरा डेटा मिट जाएगा.

Google Play, ऐप्लिकेशन को कैसे अपडेट करता है

Google Play, ऐप्लिकेशन अपडेट करने के लिए इन सिद्धांतों का पालन करता है:

  • उपयोगकर्ताओं को अप-टू-डेट रखें. ऐप्लिकेशन को अप-टू-डेट रखने का सुझाव दिया जाता है. इससे उपयोगकर्ताओं को सुरक्षा से जुड़ी समस्याओं से सुरक्षित रखने और नई सुविधाओं के फ़ायदों का इस्तेमाल करने में मदद मिलती है.
  • उपयोगकर्ता की पसंद का सम्मान करें. Google Play, उपयोगकर्ताओं के खातों से जुड़े ऐप्लिकेशन को अपडेट करता है. यह अपडेट, उपयोगकर्ताओं की चुनी गई अपडेट सेटिंग के आधार पर होता है. जैसे, मीटर के हिसाब से डेटा इस्तेमाल करने की अनुमति देना या न देना.
  • डेवलपर की पसंद का सम्मान करें. Google Play, ऐप्लिकेशन के अपडेट तय करते समय डेवलपर के कॉन्फ़िगरेशन विकल्पों का इस्तेमाल करता है.
  • संसाधनों का सही इस्तेमाल करें. अपडेट डाउनलोड करने के समय को ऑप्टिमाइज़ करके, बैटरी लाइफ़ को बेहतर बनाएं. साथ ही, कंप्रेस करने और पैच करने जैसी तकनीकों का इस्तेमाल करके, डेटा के इस्तेमाल को कम करें.

अगर किसी डिवाइस पर इंस्टॉल किया गया कोई ऐप्लिकेशन इन शर्तों को पूरा करता है, तो Google Play उसे अपडेट कर देता है:

  • ऐप्लिकेशन को एक ही ऐप्लिकेशन आईडी के साथ Google Play पर पब्लिश किया गया हो.
  • पब्लिश किए गए ऐप्लिकेशन का साइनिंग सर्टिफ़िकेट, फ़िलहाल इंस्टॉल किए गए वर्शन के साइनिंग सर्टिफ़िकेट से मेल खाता हो या उसमें मान्य प्रूफ़ ऑफ़ रोटेशन शामिल हो.
  • ऐप्लिकेशन, उपयोगकर्ता की लाइब्रेरी का हिस्सा है या इसे ओईएम ने पहले से लोड किया था.
  • डेवलपर की ओर से तय किए गए टारगेटिंग विकल्पों के मुताबिक, यह ऐप्लिकेशन इस उपयोगकर्ता और इस डिवाइस के लिए उपलब्ध है.
  • Google Play पर उपलब्ध वर्शन की तुलना में, इंस्टॉल किया गया ऐप्लिकेशन पुराना है.

इन शर्तों के पूरा होने पर, Google Play ऐप्लिकेशन को अपडेट कर सकता है. यहां दिए गए उप-अनुभागों में, बताई गई कुछ शर्तों के बारे में ज़्यादा जानकारी दी गई है.

ध्यान दें कि Google Play, डेवलपर की ओर से ऐप्लिकेशन का कॉन्टेंट डाउनलोड करता है या ऐप्लिकेशन के बाइनरी फ़ाइलों को ठीक करता है. हालांकि, ऐसा करते समय Android के वर्शन कोड में बदलाव नहीं किया जाता. उदाहरण के लिए, आंशिक तौर पर डाउनलोड किए गए कॉन्टेंट को पूरा करने या मांग पर स्प्लिट डाउनलोड करने के दौरान ऐसा किया जाता है.

Google Play पर पब्लिश किया गया

Google Play पर पब्लिश किए गए ऐप्लिकेशन की पहचान करने के लिए, Google Play ऐप्लिकेशन आईडी का इस्तेमाल करता है. यह शर्त तब पूरी होती है, जब इंस्टॉल किए गए ऐप्लिकेशन का ऐप्लिकेशन आईडी, Google Play पर पब्लिश किए गए ऐप्लिकेशन के ऐप्लिकेशन आईडी से मेल खाता हो.

उपयोगकर्ता की लाइब्रेरी का हिस्सा

यह शर्त तब पूरी होती है, जब इनमें से कोई एक बात सही हो:

  • डिवाइस पर मौजूद किसी भी चालू Google खाते ने, Google Play पर इंस्टॉल करें या खरीदें बटन पर टैप करके, ऐप्लिकेशन को पहले ही हासिल कर लिया हो.
  • ओईएम ने ऐप्लिकेशन को सिस्टम इमेज के हिस्से के तौर पर पहले से लोड किया हो.

उपयोगकर्ताओं के पास, अपनी लाइब्रेरी से ऐप्लिकेशन को मैन्युअल तरीके से हटाने का विकल्प भी होता है.

पुराना

Google Play, किसी डिवाइस पर इंस्टॉल किए गए ऐप्लिकेशन के वर्शन कोड की जांच करके यह पता लगाता है कि वह पुराना है या नहीं. अगर Google Play पर डाउनलोड के लिए उपलब्ध वर्शन का वर्शन कोड, इंस्टॉल किए गए वर्शन के वर्शन कोड से ज़्यादा है, तो Google Play यह मानता है कि इंस्टॉल किया गया ऐप्लिकेशन पुराना है.

एक से ज़्यादा ऐप्लिकेशन स्टोर पर मौजूद ऐप्लिकेशन

एक से ज़्यादा ऐप्लिकेशन स्टोर पर कोई ऐप्लिकेशन पब्लिश करते समय, क्रॉस-स्टोर अपडेट को कंट्रोल करने के कुछ तरीके हैं. यहां दिए गए सेक्शन में, इन विकल्पों के बारे में बताया गया है. साथ ही, इनके फ़ायदों और नुकसानों के बारे में भी बताया गया है.

एक से ज़्यादा स्टोर पर अपडेट करने की सुविधा को रोकना

ऐसा हो सकता है कि आपको हर ऐप स्टोर को, आपके ऐप्लिकेशन के लिए क्रॉस-स्टोर ऐप्लिकेशन अपडेट करने से रोकना हो. ऐसा तब किया जा सकता है, जब आपके ऐप्लिकेशन का कॉन्टेंट हर ऐप स्टोर पर अलग-अलग हो. इसके लिए, ऐप्लिकेशन को दो अलग-अलग ऐप्लिकेशन आईडी के साथ पब्लिश किया जा सकता है. इसके अलावा, ऐप्लिकेशन को एक ही ऐप्लिकेशन आईडी और दो अलग-अलग साइनिंग की के साथ पब्लिश किया जा सकता है.

ऐसा हो सकता है कि आप अपनी साइनिंग की का दोबारा इस्तेमाल कम से कम करना चाहें, ताकि की के गलत इस्तेमाल से होने वाले जोखिम को कम किया जा सके. इसलिए, हर ऐप्लिकेशन स्टोर के लिए अलग-अलग ऐप्लिकेशन साइनिंग की का इस्तेमाल करें. ऐसा करने से, एक से ज़्यादा स्टोर में अपडेट नहीं किए जा सकेंगे.

चाहे कोई भी तरीका चुना जाए, Android उन ऐप्लिकेशन को काम न करने वाले ऐप्लिकेशन के तौर पर मानता है जिनका ऐप्लिकेशन आईडी और साइनिंग की मेल नहीं खाती. अगर किसी उपयोगकर्ता को एक स्टोर से दूसरे स्टोर पर स्विच करना है, तो उसे इंस्टॉल किया गया ऐप्लिकेशन मिटाना होगा. इससे उस ऐप्लिकेशन से जुड़ा सारा डेटा मिट जाएगा. इसके बाद, उसे दूसरे स्टोर से ऐप्लिकेशन को फिर से इंस्टॉल करना होगा.

एक से ज़्यादा स्टोर के लिए अपडेट की अनुमति दें

ऐसा हो सकता है कि आपको हर ऐप स्टोर को, अपने ऐप्लिकेशन के लिए क्रॉस-स्टोर ऐप्लिकेशन अपडेट करने की अनुमति देनी हो. अगर आपको सभी ऐप स्टोर पर एक ही कॉन्टेंट के साथ अपना ऐप्लिकेशन उपलब्ध कराना है और आपको यह पक्का करना है कि उपयोगकर्ता हमेशा अप-टू-डेट रहें, तो इस विकल्प को चुना जा सकता है. जब तक सभी ऐप्लिकेशन स्टोर पर एक ही ऐप्लिकेशन आईडी और साइनिंग की का इस्तेमाल किया जाता है, तब तक हर ऐप्लिकेशन स्टोर के पास आपके ऐप्लिकेशन के इंस्टॉलेशन को अपडेट करने की सुविधा होती है. इससे कोई फ़र्क़ नहीं पड़ता कि उपयोगकर्ता ने ऐप्लिकेशन को पहली बार कहां से डाउनलोड किया था.

हालांकि, इससे आपके उपयोगकर्ताओं को अप्रत्याशित अनुभव मिल सकता है. ऐसा इसलिए, क्योंकि हर ऐप्लिकेशन स्टोर, क्रॉस-स्टोर ऐप्लिकेशन अपडेट को अलग-अलग तरीके से लागू करता है. उदाहरण के लिए, कोई उपयोगकर्ता एक स्टोर से मिलने वाले अपडेट बंद कर सकता है. उसे यह पता नहीं होता कि दूसरा स्टोर अब भी अपडेट भेज सकता है.

अगर आपने पहले क्रॉस-स्टोर अपडेट की अनुमति दी थी, लेकिन अब आपको किसी डिवाइस पर मौजूद अपडेट के किसी सोर्स को प्राथमिकता देनी है, तो अपने ऐप्लिकेशन को अपने पसंदीदा ऐप स्टोर पर ज़्यादा वर्शन कोड के साथ रिलीज़ करें. साथ ही, अन्य ऐप स्टोर पर कम वर्शन कोड के साथ रिलीज़ करना जारी रखें. पसंदीदा सोर्स से, ज़्यादा वर्शन वाला कोड अपडेट इंस्टॉल हो जाने के बाद, अन्य ऐप्लिकेशन स्टोर उस डिवाइस पर क्रॉस-अपडेट नहीं कर पाएंगे.