बैकग्राउंड में जगह की जानकारी का अनुरोध करना

इस पेज पर इनके बारे में बताया गया है:

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

अनुमति के डायलॉग बॉक्स का कॉन्टेंट, टारगेट किए जा रहे एसडीके के वर्शन पर निर्भर करता है

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

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

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

ऐप्लिकेशन, Android 11 या उसके बाद के वर्शन को टारगेट करता हो

अगर आपके ऐप्लिकेशन को ACCESS_BACKGROUND_LOCATION अनुमति नहीं मिली है और shouldShowRequestPermissionRationale() true दिखाता है, तो उपयोगकर्ताओं को शिक्षा देने वाला यूज़र इंटरफ़ेस (यूआई) दिखाएं. इसमें यह जानकारी शामिल होनी चाहिए:

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

ऐप्लिकेशन, Android 10 या इससे पहले के वर्शन को टारगेट करता हो

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

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

उपयोगकर्ता, बैकग्राउंड में जगह की जानकारी की सटीक सेटिंग पर असर डाल सकता है

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

अन्य संसाधन

Android में जगह की जानकारी की अनुमतियों के बारे में ज़्यादा जानने के लिए, यहां दिया गया कॉन्टेंट देखें:

कोडलैब

वीडियो

सैंपल