ऐप्लिकेशन को Android 11 पर माइग्रेट करना

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

उपयोगकर्ताओं को नया प्लैटफ़ॉर्म तब से मिलना शुरू हो जाता है, जब सोर्स कोड को AOSP (Android Open Source Project) के लिए रिलीज़ किया जाता है. इसलिए, यह ज़रूरी है कि ऐप्लिकेशन तैयार हों और उपयोगकर्ताओं के लिए उम्मीद के मुताबिक काम कर रहे हों. साथ ही, नए प्लैटफ़ॉर्म का ज़्यादा से ज़्यादा फ़ायदा पाने के लिए, नए प्लैटफ़ॉर्म की सुविधाओं और एपीआई का इस्तेमाल कर रहे हों.

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

माइग्रेशन की सामान्य प्रोसेस में दो चरण होते हैं. ये दोनों चरण एक साथ भी पूरे किए जा सकते हैं:

  • यह पक्का करना कि ऐप्लिकेशन, Android 11 के फ़ाइनल वर्शन के साथ काम करता हो
  • प्लैटफ़ॉर्म की नई सुविधाओं और एपीआई को टारगेट करना (फ़ाइनल रिलीज़ के बाद जल्द से जल्द)

इस पेज पर, हर चरण के लिए सामान्य तरीका बताया गया है. जब आप शुरू करने के लिए तैयार हों, तब Android 11 डाउनलोड करें लेख पढ़ें.

पक्का करें कि ऐप्लिकेशन, Android 11 के साथ काम करता हो

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

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

शुरू करने से पहले, व्यवहार में होने वाले उन बदलावों के बारे में जान लें जो आपके ऐप्लिकेशन पर असर डाल सकते हैं. भले ही, आपने उसके targetSdkVersion में कोई बदलाव न किया हो.

कंपैटिबिलिटी टेस्ट करना

ज़्यादातर मामलों में, Android 11 के साथ काम करने की क्षमता की जांच करना, ऐप्लिकेशन रिलीज़ करने से पहले की जाने वाली जांच जैसा ही होता है. यह ऐप्लिकेशन की क्वालिटी के मुख्य दिशा-निर्देशों और जांच के सबसे सही तरीकों की समीक्षा करने का सही समय है.

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

यह भी पक्का करें कि आपने गैर-एसडीके इंटरफ़ेस के इस्तेमाल की समीक्षा कर ली हो और उनकी जांच कर ली हो. इसके बाद, सार्वजनिक एसडीके या NDK के बराबर के इंटरफ़ेस पर स्विच करें. logcat की चेतावनियों पर नज़र रखें. इनसे इन ऐक्सेस के बारे में पता चलता है. साथ ही, प्रोग्राम के हिसाब से इन्हें पकड़ने के लिए, StrictMode तरीके detectNonSdkApiUsage() का इस्तेमाल करें.

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

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

नए एपीआई की मदद से, ऐप्लिकेशन की टारगेटिंग और बिल्ड को अपडेट करें

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

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

Android 11 के साथ पूरी तरह से काम करने के लिए, यहां दिया गया तरीका अपनाएं.

एसडीके पाना, टारगेटिंग बदलना, और नए एपीआई का इस्तेमाल करना

Android 11 के साथ काम करने वाले SDK टूल का इस्तेमाल शुरू करने के लिए, सबसे पहले Android 11 SDK और ज़रूरी टूल को Android Studio में डाउनलोड करें. इसके बाद, ऐप्लिकेशन के targetSdkVersion और compileSdkVersion को "30" में बदलें और ऐप्लिकेशन को फिर से कंपाइल करें. ज़्यादा जानकारी के लिए, सेटअप गाइड देखें.

Android 11 पर काम करने वाले ऐप्लिकेशन की जांच करना

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

बुनियादी तौर पर कंपैटिबिलिटी की जांच की तरह ही, सभी फ़्लो और सुविधाओं को आज़माएं और समस्याएं ढूंढें. टेस्टिंग के दौरान, Android 11 को टारगेट करने वाले ऐप्लिकेशन के लिए, व्यवहार में हुए बदलावों पर ध्यान दें. खास तौर पर, निजता से जुड़े बदलावों की समीक्षा करना न भूलें. साथ ही, बदलावों को लागू करने के लिए किए गए किसी भी सुधार की जांच करें. यह समय, ऐप्लिकेशन की क्वालिटी के लिए बने मुख्य दिशा-निर्देशों और टेस्टिंग के सबसे सही तरीकों के हिसाब से अपने ऐप्लिकेशन की जांच करने का भी सही समय है.

यह पक्का करें कि आपने गैर-एसडीके इंटरफ़ेस के इस्तेमाल पर लगी पाबंदियों की समीक्षा कर ली हो और उनके इस्तेमाल की जांच कर ली हो. logcat की उन चेतावनियों पर ध्यान दें जो इन ऐक्सेस और इस्तेमाल को हाइलाइट करती हैं. साथ ही, प्रोग्राम के हिसाब से उन्हें पकड़ने के लिए, StrictMode तरीके detectNonSdkApiUsage() का इस्तेमाल करें.

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

ऐप्लिकेशन के साथ काम करने की सुविधा को टॉगल करके जांच करना

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

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

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