Google Play के टारगेट एपीआई लेवल की ज़रूरी शर्तें पूरी करें

जब कोई APK अपलोड किया जाता है, तो यह ज़रूरी है कि वह Google Play के टारगेट एपीआई लेवल की ज़रूरी शर्तों को पूरा करे.

31 अगस्त, 2025 से:

  • Google Play पर सबमिट किए जाने वाले सभी नए ऐप्लिकेशन और ऐप्लिकेशन के अपडेट को, Android 15 (एपीआई लेवल 35) या इसके बाद के वर्शन को टारगेट करना होगा. हालांकि, Wear OS, Android Automotive OS, और Android TV के ऐप्लिकेशन के लिए, Android 14 (एपीआई लेवल 34) या इसके बाद के वर्शन को टारगेट करना होगा.
  • मौजूदा ऐप्लिकेशन को Android 14 (एपीआई लेवल 34) या उससे बाद के लेवल को टारगेट करना होगा, ताकि नए उपयोगकर्ता आपके ऐप्लिकेशन के टारगेट एपीआई लेवल से ज़्यादा के Android OS वर्शन वाले डिवाइसों पर उनका इस्तेमाल करना जारी रख सकें. Android 13 (एपीआई लेवल 33) या इससे पहले के वर्शन को टारगेट करने वाले ऐप्लिकेशन, सिर्फ़ आपके ऐप्लिकेशन के टारगेट एपीआई लेवल के बराबर या उससे नीचे के Android OS वर्शन वाले डिवाइसों के लिए उपलब्ध होंगे. इनमें Wear OS और Android TV के लिए, Android 12 (एपीआई लेवल 31) या इससे पहले के वर्शन को टारगेट करने वाले ऐप्लिकेशन भी शामिल हैं.

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

ये ज़रूरी शर्तें, जिन ऐप्लिकेशन पर लागू नहीं होतीं:

  • हमेशा निजी रहने वाले ऐप्लिकेशन, जो किसी खास संगठन में काम करने वाले उपयोगकर्ताओं के लिए ही बनाए गए हों.

नए एसडीके को टारगेट क्यों करना चाहिए?

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

हाल के किसी एपीआई लेवल को टारगेट करने के लिए, अपना ऐप्लिकेशन कॉन्फ़िगर करने से यह पक्का हो जाता है कि उपयोगकर्ताओं को इन सुधारों का फ़ायदा मिलेगा. साथ ही, ऐसा करने पर, उपयोगकर्ता आपके ऐप्लिकेशन को अब भी Android के पुराने वर्शन पर चला पाएंगे. हाल ही के एपीआई लेवल को टारगेट करने से, आपका ऐप्लिकेशन प्लैटफ़ॉर्म की नई सुविधाओं का फ़ायदा भी ले सकता है. इससे उपयोगकर्ताओं को बेहतर अनुभव मिलेगा. इसके अलावा, Android 10 (एपीआई लेवल 29) के बाद के वर्शन पर, जब उपयोगकर्ता पहली बार कोई ऐसा ऐप्लिकेशन खोलते हैं जो Android 5.1 (एपीआई लेवल 22) या इससे पहले के वर्शन को टारगेट करता है, तो उन्हें एक चेतावनी दिखती है.

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

Android 12 और इसके बाद के वर्शन (एपीआई लेवल 31) से नए वर्शन पर माइग्रेट करना

Android के नए वर्शन को टारगेट करने के लिए, अपने ऐप्लिकेशन को अपडेट करने के लिए, व्यवहार में हुए बदलावों की सूची देखें:

Android 11 (एपीआई लेवल 30) से Android 12 (एपीआई लेवल 31) पर माइग्रेट करना

सुरक्षा और अनुमतियां

  • ब्लूटूथ: आपको BLUETOOTH और BLUETOOTH_ADMIN अनुमतियों के एलान को BLUETOOTH_SCAN, BLUETOOTH_ADVERTISE या BLUETOOTH_CONNECT अनुमतियों के एलान से बदलना होगा. अब आपको ब्लूटूथ से जुड़ी कार्रवाइयों के लिए, LOCATION रनटाइम अनुमति के अनुरोध करने की ज़रूरत नहीं है.
  • जगह की जानकारी: उपयोगकर्ता, ऐप्लिकेशन से सिर्फ़ जगह की अनुमानित जानकारी पाने का अनुरोध कर सकते हैं. ACCESS_FINE_LOCATION का अनुरोध करते समय, आपको ACCESS_COARSE_LOCATION अनुमति का अनुरोध करना होगा.
  • हाइबरनेशन: अगर ऐप्लिकेशन को कुछ समय तक इस्तेमाल नहीं किया जाता है, तो उन्हें हाइबरनेशन मोड में डाला जा सकता है. हाइबरनेशन मोड में, आपके ऐप्लिकेशन की रनटाइम अनुमतियां और कैश मेमोरी रीसेट हो जाती है. साथ ही, आपके पास टास्क या सूचनाएं चलाने का विकल्प नहीं होता. अपने ऐप्लिकेशन के हाइबरनेशन की स्थिति देखें.
  • PendingIntent ऑब्जेक्ट की म्यूटेबिलिटी: आपको अपने ऐप्लिकेशन के बनाए गए हर PendingIntent ऑब्जेक्ट की म्यूटेबिलिटी की जानकारी देनी होगी.

उपयोगकर्ता अनुभव

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

परफ़ॉर्मेंस

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

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

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

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

Android 12 (एपीआई लेवल 31) को टारगेट करने वाले ऐप्लिकेशन पर असर डालने वाले बदलावों के बारे में पूरी जानकारी देखें.

Android 11 (एपीआई लेवल 30) से पहले के वर्शन से माइग्रेट करना

वह Android वर्शन चुनें जिससे आपको माइग्रेट करना है:

Android 5 (एपीआई लेवल 21) पर माइग्रेट करना

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

अगले सेक्शन में दिए गए निर्देशों का पालन करके जारी रखें.

Android 6 (एपीआई लेवल 23) पर माइग्रेट करना

Android 6.0 और प्लैटफ़ॉर्म के इसके बाद के वर्शन को टारगेट करने वाले ऐप्लिकेशन पर ये बातें लागू होती हैं:

  • रनटाइम अनुमतियां

    • खतरनाक अनुमतियां सिर्फ़ रनटाइम में दी जाती हैं. आपके यूज़र इंटरफ़ेस (यूआई) फ़्लो में, इन अनुमतियों को देने की सुविधा होनी चाहिए.

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

Android 6.0 (एपीआई लेवल 23) में किए गए सभी बदलावों की सूची देखने के लिए, प्लैटफ़ॉर्म के उस वर्शन के लिए काम करने के तरीके में बदलाव पेज देखें.

अगले सेक्शन में दिए गए निर्देशों का पालन करके जारी रखें.

Android 7 (एपीआई लेवल 24) पर माइग्रेट करना

Android 7.0 और प्लैटफ़ॉर्म के इसके बाद के वर्शन को टारगेट करने वाले ऐप्लिकेशन पर ये बातें लागू होती हैं:

  • बैटरी बचाएं (डोज़) और ऐप स्टैंडबाय

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

    जब कोई डिवाइस, बैटरी बचाने (डोज़) और ऐप्लिकेशन स्टैंडबाय मोड में होता है, तो सिस्टम इस तरह काम करता है:

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

    • सिस्टम, ऐप्लिकेशन की निजी डायरेक्ट्री के ऐक्सेस पर पाबंदी लगाता है.
    • अपने ऐप्लिकेशन के बाहर file:// यूआरआई को दिखाने पर, FileUriExposedException ट्रिगर होता है. अगर आपको अपने ऐप्लिकेशन से बाहर फ़ाइलें शेयर करनी हैं, तो FileProvider लागू करें
  • सिस्टम, गैर-एनडीके लाइब्रेरी से लिंक करने की अनुमति नहीं देता.

Android 7.0 (एपीआई लेवल 24) में किए गए बदलावों की पूरी सूची देखने के लिए, प्लैटफ़ॉर्म के उस वर्शन के लिए काम करने के तरीके में बदलाव पेज देखें.

अगले सेक्शन में दिए गए निर्देशों का पालन करके जारी रखें.

Android 8 (एपीआई लेवल 26) पर माइग्रेट करना

Android 8.0 और प्लैटफ़ॉर्म के इसके बाद के वर्शन को टारगेट करने वाले ऐप्लिकेशन पर, ये बातें लागू होती हैं:

  • बैकग्राउंड में ऐप्लिकेशन के चलने की सीमाएं
    • सिस्टम, फ़ोरग्राउंड में नहीं चल रहे ऐप्लिकेशन के लिए सेवाओं को सीमित कर देता है.
      • startService() अब एक अपवाद दिखाता है, जब कोई ऐप्लिकेशन startService() के दौरान इसे चालू करने की कोशिश करता है.
      • फ़ोरग्राउंड सेवाएं शुरू करने के लिए, किसी ऐप्लिकेशन को startForeground() और startForegroundService() का इस्तेमाल करना होगा.
      • JobScheduler API में किए गए बदलावों को ध्यान से देखें. इनके बारे में Android 8.0 (एपीआई लेवल 26) के बदलावों के बारे में जानकारी देने वाले पेज पर बताया गया है.
      • Firebase Cloud Messaging के लिए, Google Play services SDK का 10.2.1 वर्शन या इसके बाद का वर्शन ज़रूरी है.
      • Firebase Cloud Messaging का इस्तेमाल करते समय, मैसेज की डिलीवरी, बैकग्राउंड में ऐप्लिकेशन के चलने की सीमाओं के मुताबिक होती है. जब मैसेज मिलने पर बैकग्राउंड में काम करना ज़रूरी हो, जैसे कि बैकग्राउंड में डेटा सिंक करना, तो आपके ऐप्लिकेशन को Firebase Job Dispatcher या JobIntentService का इस्तेमाल करके टास्क शेड्यूल करने चाहिए. ज़्यादा जानकारी के लिए, Firebase Cloud Messaging का दस्तावेज़ देखें.
    • इंप्लिसिट ब्रॉडकास्ट
      • इंप्लिसिट ब्रॉडकास्ट पर पाबंदी है. बैकग्राउंड इवेंट मैनेज करने के बारे में जानकारी पाने के लिए, JobScheduler एपीआई से जुड़ा दस्तावेज़ देखें.
    • बैकग्राउंड में जगह की जानकारी ऐक्सेस करने के अनुरोध से जुड़ी सीमाएं
      • बैकग्राउंड में चल रहे ऐप्लिकेशन के पास, जगह की जानकारी के डेटा का सीमित ऐक्सेस होता है.
  • सूचना चैनल
  • निजता
    • ANDROID_ID को ऐप्लिकेशन साइनिंग कुंजी के हिसाब से स्कोप किया जाता है.

Android 8.0 (एपीआई लेवल 26) में किए गए सभी बदलावों की सूची देखने के लिए, प्लैटफ़ॉर्म के उस वर्शन के लिए बदलावों का व्यवहार पेज देखें.

Android 8 (एपीआई 26) से Android 9 (एपीआई 28) पर माइग्रेट करना

Android 9.0 (एपीआई लेवल 28) में किए गए सभी बदलावों की सूची देखने के लिए, व्यवहार में हुए बदलाव देखें.

Android 9 (एपीआई लेवल 28) से Android 10 (एपीआई लेवल 29) पर माइग्रेट करना

  • फ़ुल-स्क्रीन इंटेंट वाली सूचनाएं
    • सामान्य अनुमति का अनुरोध करना होगा USE_FULL_SCREEN_INTENT (रनटाइम अनुमति नहीं).
  • फ़ोल्ड किए जा सकने वाले डिवाइसों और बड़ी स्क्रीन वाले डिवाइसों के लिए सहायता
    • अब एक साथ कई ऐक्टिविटी "फिर से शुरू की गई" स्थिति में हो सकती हैं. हालांकि, फ़ोकस सिर्फ़ एक ऐक्टिविटी पर होता है.
      • इस बदलाव का असर onResume() और onPause() के व्यवहार पर पड़ेगा.
      • लाइफ़साइकल का नया कॉन्सेप्ट "टॉपमोस्ट रीज़्यूम्ड", जिसे onTopResumedActivityChanged() की सदस्यता लेकर पता लगाया जा सकता है.
        • सिर्फ़ एक गतिविधि को "सबसे ऊपर फिर से शुरू किया गया" के तौर पर मार्क किया जा सकता है.
    • जब resizeableActivity को false पर सेट किया जाता है, तो ऐप्लिकेशन, minAspectRatio को भी सेट कर सकते हैं. इससे ऐप्लिकेशन, कम चौड़ाई वाले आसपेक्ट रेशियो पर अपने-आप लेटरबॉक्स हो जाता है.
  • निजता से जुड़े बदलाव
    • स्कोप किया गया स्टोरेज
      • बाहरी स्टोरेज का ऐक्सेस सिर्फ़ ऐप्लिकेशन के लिए खास तौर पर बनाई गई डायरेक्ट्री और कुछ खास तरह के मीडिया तक सीमित होता है. यह मीडिया, ऐप्लिकेशन ने बनाया होता है.
    • ऐप्लिकेशन के बैकग्राउंड में होने पर, जगह की जानकारी को ऐक्सेस करने पर पाबंदी लगाई गई है. इसके लिए, ACCESS_BACKGROUND_LOCATION अनुमति की ज़रूरत होती है.
    • रीसेट नहीं किए जा सकने वाले आइडेंटिफ़ायर, जैसे कि IMEI और सीरियल नंबर को ऐक्सेस करने पर पाबंदी.
    • शारीरिक गतिविधि की जानकारी को सीमित तौर पर ऐक्सेस किया जा सकता है. जैसे, उपयोगकर्ता के कदमों की संख्या. इसके लिए, ACTIVITY_RECOGNITION अनुमति की ज़रूरत होती है.
    • टेलीफ़ोनी, ब्लूटूथ, और वाई-फ़ाई से जुड़े कुछ एपीआई का ऐक्सेस सीमित कर दिया गया है. इसके लिए, ACCESS_FINE_LOCATION अनुमति ज़रूरी है.
    • वाई-फ़ाई सेटिंग के ऐक्सेस पर पाबंदी लगी है

Android 10 (एपीआई लेवल 29) से Android 11 (एपीआई लेवल 30) पर माइग्रेट करना

Android 11 (एपीआई लेवल 30) में किए गए सभी बदलावों की सूची देखने के लिए, काम करने के तरीके में बदलाव पेज पर जाएं.

पिछले सेक्शन में दिए गए निर्देशों का पालन करके, एपीआई 31 पर अपडेट करना जारी रखें.

अपने ऐप्लिकेशन को बेहतर बनाना

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

  • कैमरे का ज़्यादा से ज़्यादा फ़ायदा पाने के लिए, CameraX का इस्तेमाल करें. यह बीटा वर्शन में उपलब्ध है.
  • सबसे सही तरीकों का पालन करने, छोटे-मोटे बदलाव वाले कोड लिखने से बचने, और मुश्किल टास्क आसान बनाने के लिए, Jetpack कॉम्पोनेंट का इस्तेमाल करें. इससे, आपको उस कोड पर फ़ोकस करने में मदद मिलेगी जो आपके लिए ज़रूरी है.
  • कम कोड में, तेज़ी से बेहतर ऐप्लिकेशन लिखने के लिए Kotlin का इस्तेमाल करें.
  • पक्का करें कि आपने निजता से जुड़ी ज़रूरी शर्तों का पालन किया है. साथ ही, सबसे सही तरीके भी अपनाए हैं.
  • अपने ऐप्लिकेशन में गहरे रंग वाली थीम इस्तेमाल करने की सुविधा जोड़ें.
  • अपने ऐप्लिकेशन में जेस्चर नेविगेशन की सुविधा जोड़ें.
  • अपने ऐप्लिकेशन को Google Cloud Messaging (GCM) से Firebase Cloud Messaging के नए वर्शन पर माइग्रेट करें.
  • विंडो को बेहतर तरीके से मैनेज करने की सुविधा का फ़ायदा पाएं.

अपने एसडीके और लाइब्रेरी देखें और उन्हें अपडेट करें

पक्का करें कि तीसरे पक्ष के SDK टूल की डिपेंडेंसी, API 31 के साथ काम करती हों: एसडीके की सेवा देने वाली कुछ कंपनियां, इसे अपने मेनिफ़ेस्ट में पब्लिश करती हैं. हालांकि, अन्य कंपनियों के लिए इसकी ज़्यादा जांच करनी होगी. अगर एपीआई 31 के साथ काम न करने वाले एसडीके का इस्तेमाल किया जा रहा है, तो एसडीके टूल की सेवा देने वाली कंपनी के साथ मिलकर इस समस्या को ठीक करें.

इसके अलावा, ध्यान दें कि आपके ऐप्लिकेशन या गेम के targetSdkVersion, Android प्लैटफ़ॉर्म की निजी लाइब्रेरी के ऐक्सेस पर पाबंदी लगाई जा सकती है. ज़्यादा जानकारी के लिए, NDK ऐप्लिकेशन को प्लैटफ़ॉर्म लाइब्रेरी से लिंक करना लेख पढ़ें.

आपको Android Support Library के उस वर्शन में मौजूद पाबंदियों की भी पुष्टि करनी चाहिए जिसका इस्तेमाल किया जा रहा है. हमेशा की तरह, आपको यह पक्का करना होगा कि Android Support Library का मुख्य वर्शन और आपके ऐप्लिकेशन का compileSdkVersion एक-दूसरे के साथ काम करता हो.

हमारा सुझाव है कि आप targetSdkVersion को Support Library के मुख्य वर्शन से कम या उसके बराबर चुनें. हमारा सुझाव है कि आप हाल ही के ऐसे Support Library वर्शन पर अपडेट करें जो आपके ऐप्लिकेशन के साथ काम करता हो. इससे आपको नई सुविधाओं का फ़ायदा मिलेगा और गड़बड़ियों को ठीक करने में मदद मिलेगी.

अपने ऐप्लिकेशन का परीक्षण करें

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

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

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

    • adb का इस्तेमाल करके, अपने टेस्ट डिवाइस को Doze मोड में रखें. ऐसा तब करें, जब आपका ऐप्लिकेशन चल रहा हो.
      • इस्तेमाल के उन सभी उदाहरणों की जांच करें जिनसे Firebase Cloud Messaging के मैसेज ट्रिगर होते हैं.
      • अलार्म या जॉब का इस्तेमाल करने वाले किसी भी उदाहरण की जांच करें.
      • बैकग्राउंड सेवाओं पर निर्भरता कम करें.
    • अपने ऐप्लिकेशन को ऐप्लिकेशन स्टैंडबाय मोड में सेट करना
      • इस्तेमाल के उन सभी उदाहरणों की जांच करें जिनसे Firebase Cloud Messaging के मैसेज ट्रिगर होते हैं.
      • अलार्म का इस्तेमाल करने वाले किसी भी उदाहरण की जांच करें.
  • यह कुकी, नई फ़ोटो / वीडियो लेने की प्रोसेस को मैनेज करती है

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

    • जांच करें कि कॉन्टेंट दूसरे ऐप्लिकेशन में दिख रहा हो और उससे ऐप्लिकेशन क्रैश न हो रहे हों.

ज़्यादा जानकारी

Google Play Console में ईमेल पाने की सुविधा के लिए ऑप्ट-इन करें, ताकि हम आपको Android और Google Play से जुड़े अहम अपडेट और सूचनाएं भेज सकें. इनमें पार्टनर के लिए हर महीने जारी होने वाला हमारा न्यूज़लेटर भी शामिल है.