बैटरी के लिए जगह को ऑप्टिमाइज़ करें

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

Android 8.0 में बैकग्राउंड में जगह की जानकारी ऐक्सेस करने की सीमाओं में ये बदलाव किए गए हैं:

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

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

बैटरी के तेज़ी से खर्च होने की समस्या को समझें

जगह की जानकारी इकट्ठा करना और बैटरी का तेज़ी से खर्च होना, नीचे दी गई बातों से सीधे तौर पर जुड़े हैं पहलुओं:

  • सटीक जानकारी: जगह की सटीक जानकारी. आम तौर पर, जितनी ज़्यादा सटीक होगी, बैटरी उतनी ही ज़्यादा खर्च होगी.
  • फ़्रीक्वेंसी: जगह की जानकारी का पता कितनी बार लगाया जाता है. अक्सर यह जगह ज़्यादा इस्तेमाल की जाती है से पता चलता है कि ज़्यादा बैटरी खर्च होती है.
  • इंतज़ार का समय: जगह की जानकारी का डेटा कितनी जल्दी डिलीवर होता है. आम तौर पर, इंतज़ार का समय कम रखना पड़ता है बैटरी बचाएँ.

सटीक जानकारी

जगह की सटीक जानकारी देने के लिए, setPriority() विधि से, निम्न में से एक मान को तर्क के रूप में पास करना:

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

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

फ़्रीक्वेंसी

जगह की जानकारी की फ़्रीक्वेंसी दो तरीकों से तय की जा सकती है:

  • इसका इस्तेमाल करें setinterval() इस तरीके का इस्तेमाल करके उस इंटरवल को तय करें जिस पर आपके ऐप्लिकेशन के लिए जगह की जानकारी का पता लगाया गया है.
  • इसका इस्तेमाल करें setFastestInterval() उस अंतराल को निर्दिष्ट करने के लिए जिस पर अन्य ऐप्लिकेशन के लिए परिकलित स्थान है आपके ऐप्लिकेशन पर डिलीवर किया जाएगा.

setInterval() का इस्तेमाल करते समय, आपको सबसे बड़ी वैल्यू पास करनी होगी. यह है यह खास तौर पर बैकग्राउंड में जगह की जानकारी इकट्ठा करने के मामले में लागू होता है, जो अक्सर बैटरी के तेज़ी से खर्च होने की समस्या से बचा जा सकता है. कुछ सेकंड के अंतरालों का इस्तेमाल फ़ोरग्राउंड के इस्तेमाल के उदाहरण देखें. Android 8.0 में बैकग्राउंड में जगह की जानकारी ऐक्सेस करने की सीमा तय की गई है इन रणनीतियों को लागू करना चाहिए. हालांकि, यह ज़रूरी है कि आपके ऐप्लिकेशन को Android पर इन्हें लागू करने की कोशिश की जाए 7.0 या उससे पहले के वर्शन वाले डिवाइस.

इंतज़ार का समय

इंतज़ार का समय तय करने के लिए, setMaxWaitTime() तरीका, आम तौर पर ऐसा मान पास करता है जो अंतराल से कई गुना बड़ा होता है इसमें बताया गया है setInterval() तरीका. इस सेटिंग से जगह की जानकारी की डिलीवरी में देरी होती है. साथ ही, जगह की जानकारी के एक से ज़्यादा अपडेट हो सकते हैं अलग-अलग बैच में डिलीवर करना होगा. इन दो बदलावों से बैटरी के इस्तेमाल को कम करने में मदद मिलती है.

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

जियोफ़ेंस का इस्तेमाल करते समय, ऐप्लिकेशन को setNotificationResponsiveness() का सबसे अच्छा तरीका इस्तेमाल करें. पांच मिनट या इससे ज़्यादा की वैल्यू का सुझाव दिया जाता है.

जगह की जानकारी के इस्तेमाल के उदाहरण

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

उपयोगकर्ता को दिखने वाले या फ़ोरग्राउंड से जुड़े अपडेट

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

इसका इस्तेमाल करें setPriority() तरीका हो सकता है, जिसका मान PRIORITY_HIGH_ACCURACY या PRIORITY_BALANCED_POWER_ACCURACY.

इस setInterval() तरीका, इस्तेमाल के उदाहरण पर निर्भर करता है: रीयल-टाइम स्थितियों के लिए, वैल्यू को कुछ पर सेट करें सेकंड; या फिर, इस प्रक्रिया को कुछ मिनट (करीब दो मिनट या का सुझाव दिया जाता है.

डिवाइस की जगह की जानकारी जानना

उदाहरण: मौसम की जानकारी देने वाला कोई ऐप्लिकेशन, डिवाइस की जगह की जानकारी जानना चाहता है.

इसका इस्तेमाल करें getLastLocation() तरीका होता है, जो सबसे हाल की उपलब्ध जगह दिखाता है (जो बहुत कम मामले शून्य हो सकते हैं) . यह तरीका जगह की जानकारी पाने का आसान तरीका देता है और जगह की जानकारी अपडेट करने का अनुरोध करने पर, आपसे कोई शुल्क नहीं लिया जाता. इस्तेमाल की जाने वाली चीज़ें के साथ isLocationAvailable() तरीका, जो स्थान के ज़रिए लौटने पर true लौटाता है getLastLocation() उचित रूप से अप-टू-डेट हो.

उपयोगकर्ता के किसी खास जगह पर होने पर अपडेट शुरू करना

उदाहरण: जब कोई उपयोगकर्ता एक तय दूरी के दायरे में हो, तो अपडेट का अनुरोध करना काम, घर या किसी अन्य जगह पर.

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

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

उपयोगकर्ता की गतिविधि की स्थिति के आधार पर अपडेट शुरू करना

उदाहरण: अपडेट का अनुरोध सिर्फ़ तब करना, जब उपयोगकर्ता ड्राइविंग कर रहा हो या राइड कर रहा हो बाइक.

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

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

भौगोलिक क्षेत्रों से जुड़े, बैकग्राउंड में जगह की जानकारी के लंबे समय तक चलने वाले अपडेट

उदाहरण: डिवाइस आस-पास होने पर, उपयोगकर्ता सूचना पाना चाहता है करते हैं.

जियोफ़ेंसिंग के लिए यह सुविधा बेहतरीन है. क्योंकि इस्तेमाल का उदाहरण बैकग्राउंड में जगह की जानकारी के साथ काम करता है, तो addGeofences(GeofencingRequest, PendingIntent) तरीका.

आपको नीचे दिए गए कॉन्फ़िगरेशन के विकल्प सेट करने चाहिए:

  • यदि आप ड्वेल ट्रांज़िशन को ट्रैक कर रहे हैं, तो setLoiteringDelay() करीब पांच मिनट या उससे कम का मान पास करने का तरीका.

  • इसका इस्तेमाल करें setNotificationResponsiveness() करीब पांच मिनट की वैल्यू पास करें. हालांकि, किसी वैल्यू का इस्तेमाल करके करीब दस मिनट का समय हो सकता है, अगर आपका ऐप्लिकेशन प्रतिक्रियात्मकता.

कोई ऐप्लिकेशन एक बार में ज़्यादा से ज़्यादा 100 जियोफ़ेंस रजिस्टर कर सकता है. इस्तेमाल किया जा रहा है ऐसे मामले में जब कोई ऐप्लिकेशन बड़ी संख्या में खुदरा दुकानदारों के विकल्पों को ट्रैक करना चाहता है, बड़ा जियोफ़ेंस (शहर के स्तर पर) और डायनैमिक तौर पर रजिस्टर करना छोटे जियोफ़ेंस (शहर की अलग-अलग जगहों के लिए) को, बड़ा जियोफ़ेंस. जब उपयोगकर्ता किसी बड़े जियोफ़ेंस में जाता है, तो छोटे जियोफ़ेंस ये काम कर सकते हैं जोड़ा जाना चाहिए; जब उपयोगकर्ता बड़ी जियोफ़ेंस से बाहर निकलता है, तो छोटे जियोफ़ेंस को हटाया जाएगा और जियोफ़ेंस को नए इलाके के लिए फिर से रजिस्टर किया जा सकता है.

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

उदाहरण: ऐसा ऐप्लिकेशन जो पैसिव तरीके से जगह की जानकारी ट्रैक करता है

इसका इस्तेमाल करें setPriority() तरीका है PRIORITY_NO_POWER विकल्प को चुनें, क्योंकि इसकी वजह से बैटरी तेज़ी से खर्च नहीं होती. अगर इसका इस्तेमाल किया जा रहा है PRIORITY_NO_POWER का इस्तेमाल नहीं किया जा सकता. इसका इस्तेमाल करें PRIORITY_BALANCED_POWER_ACCURACY या PRIORITY_LOW_POWER, हालांकि, अगर आपको इन्हें इस्तेमाल करना है, PRIORITY_HIGH_ACCURACY यह विकल्प इस्तेमाल करने से, बैकग्राउंड में लगातार काम करने की ज़रूरत नहीं पड़ेगी. बैटरी.

अगर आपको जगह की जानकारी का ज़्यादा डेटा चाहिए, तो setFastestInterval() जिस वैल्यू को पास किया जाता है उससे कम वैल्यू को पास करने का तरीका setInterval(). जब इसके साथ जोड़ा जाए PRIORITY_NO_POWER विकल्प, पैसिव लोकेशन इस्तेमाल करें.

कुछ प्रतीक्षा समय जोड़कर, सामान्य फ़्रीक्वेंसी जोड़कर, इसका इस्तेमाल करें setMaxWaitTime() तरीका. उदाहरण के लिए, अगर setinterval() तरीके का इस्तेमाल करीब 10 मिनट लगेंगे, तो आप setMaxWaitTime() को 30 से 60 मिनट के बीच की वैल्यू. इन विकल्पों का इस्तेमाल करके, जगह की जानकारी का पता लगाया जाता है के लिए तकरीबन हर 10 मिनट बाद होता है. हालांकि, ऐप्लिकेशन सिर्फ़ स्क्रीन चालू ही होता है बैच अपडेट के रूप में उपलब्ध स्थान डेटा के साथ हर 30 से 60 मिनट में. यह अप्रोच, ज़्यादा डेटा उपलब्ध होने और बैटरी के बेहतर होने की इंतज़ार में लगने वाले समय को कम करती है परफ़ॉर्मेंस.

जब उपयोगकर्ता अन्य ऐप्लिकेशन से इंटरैक्ट कर रहा हो, तब बहुत ज़्यादा सटीक जानकारी बार-बार अपडेट होती है

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

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

जगह की जानकारी इस्तेमाल करने के सबसे सही तरीके

इस सेक्शन में सबसे सही तरीके लागू करने से, बैटरी खर्च को कम करने में मदद मिलती है आपका ऐप्लिकेशन.

जगह की जानकारी से जुड़े अपडेट हटाना

जगह की जानकारी न हटा पाना, बैटरी के बेवजह खर्च होने की एक आम वजह है ज़रूरत न होने पर अपडेट कर दिया जाता है. उदाहरण के लिए, ऐसा तब हो सकता है, जब गतिविधि onStart() या onResume() लाइफ़साइकल तरीकों में एक कॉल requestlocationUpdates() इससे संबंधित कॉल के बिना removeLocationUpdates() onPause() में या onStop() लाइफ़साइकल के तरीके.

लाइफ़साइकल की जानकारी वाले कॉम्पोनेंट का इस्तेमाल करके, गतिविधियां. ज़्यादा जानकारी के लिए, लाइफ़साइकल को इनके साथ मैनेज करना देखें लाइफ़साइकल की जानकारी वाले कॉम्पोनेंट.

टाइम आउट सेट करें

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

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

जियोफ़ेंस जगह के अनुरोध में टाइम आउट जोड़ने के लिए, setExpirationDuration() तरीका.

बैच रिक्वेस्ट

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

Kotlin

val request = LocationRequest()
request.setInterval(10 * 60 * 1000)
request.setMaxWaitTime(60 * 60 * 1000)

Java

LocationRequest request = new LocationRequest();
request.setInterval(10 * 60 * 1000);
request.setMaxWaitTime(60 * 60 * 1000);

इस मामले में, स्थान का आकलन करीब हर दस मिनट में किया जाता है और जगह की जानकारी के छह डेटा पॉइंट करीब हर घंटे में एक बैच में डिलीवर किए जाते हैं. हालांकि आपको अब भी हर 10 मिनट में जगह की जानकारी अपडेट मिलती रहती है, लेकिन आप बचत करें बैटरी इसलिए सेव की जाती है, क्योंकि करीब हर घंटे में आपका डिवाइस चालू रहता है.

पैसिव लोकेशन अपडेट का इस्तेमाल करना

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

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

Kotlin

val request = LocationRequest()
request.setInterval(15 * 60 * 1000)
request.setFastestInterval(2 * 60 * 1000)

Java

LocationRequest request = new LocationRequest();
request.setInterval(15 * 60 * 1000);
request.setFastestInterval(2 * 60 * 1000);

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

जगह की जानकारी इस्तेमाल करने के दौरान, बैटरी ज़्यादा खर्च नहीं होती है. इसलिए, इस बात का ज़्यादा ध्यान रखें ऐसे मामलों में जहां जगह की जानकारी का डेटा मिलने से महंगे सीपीयू या I/O ट्रिगर होते हैं कार्रवाइयां. बैटरी की लागत को कम करने के लिए, इसमें बताया गया इंटरवल setFastestInterval() बहुत छोटा नहीं होना चाहिए.

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