पार्शियल वेक लॉक, PowerManager
API में मौजूद एक ऐसा तरीका है जिसकी मदद से डेवलपर, डिवाइस का डिसप्ले बंद होने के बाद भी सीपीयू को चालू रख सकते हैं. डिसप्ले, सिस्टम टाइमआउट की वजह से बंद हुआ हो या उपयोगकर्ता ने पावर बटन दबाया हो, इससे कोई फ़र्क़ नहीं पड़ता. आपका ऐप्लिकेशन, PARTIAL_WAKE_LOCK
फ़्लैग के साथ acquire()
को कॉल करके या वेक लॉक हासिल करने वाले अन्य एपीआई का इस्तेमाल करके, आंशिक वेक लॉक हासिल करता है.
पार्शियल वेक लॉक का ज़्यादा इस्तेमाल करने से, डिवाइस की बैटरी खत्म हो जाती है. ऐसा इसलिए होता है, क्योंकि यह डिवाइस को कम पावर वाली स्थितियों में जाने से रोकता है. पार्शियल वेक लॉक का इस्तेमाल सिर्फ़ तब किया जाना चाहिए, जब इसकी ज़रूरत हो. साथ ही, जब इसकी ज़रूरत न हो, तो इसे बंद कर देना चाहिए.
अगर आपके ऐप्लिकेशन में पार्शियल वेक लॉक का ज़्यादा इस्तेमाल होता है, तो इस समस्या का पता लगाने और इसे ठीक करने के लिए, इस पेज पर दिए गए दिशा-निर्देशों का इस्तेमाल करें.
हमारे दस्तावेज़ों को बेहतर बनाने के लिए, आपकी राय, सुझाव या शिकायत अहम है. कृपया इस लिंक का इस्तेमाल करके, हमें अपने सुझाव/राय दें या शिकायत करें:
समस्या का पता लगाना
'Android की ज़रूरी जानकारी' की मदद से, यह पता लगाया जा सकता है कि आपका ऐप्लिकेशन पार्शियल वेक लॉक का ज़्यादा इस्तेमाल कब करता है.
Android की ज़रूरी जानकारी
Android की ज़रूरी जानकारी वाली सुविधा, आपके ऐप्लिकेशन की परफ़ॉर्मेंस को बेहतर बनाने में मदद कर सकती है. इसके लिए, यह सुविधा Play Console के ज़रिए आपको सूचना देती है, ताकि आपको पता चल सके कि आपका ऐप्लिकेशन, पार्शियल वेक लॉक का ज़्यादा इस्तेमाल कर रहा है.
Android की ज़रूरी जानकारी की रिपोर्ट में, पार्शियल वेक लॉक के इस्तेमाल को बहुत ज़्यादा के तौर पर तब मार्क किया जाता है, जब 24 घंटे की अवधि में सभी पार्शियल वेक लॉक को मिलाकर, दो या उससे ज़्यादा घंटे तक इस्तेमाल किया गया हो. Android की ज़रूरी जानकारी, वेक लॉक की अवधि को सिर्फ़ तब ट्रैक करती है, जब ऐप्लिकेशन बैकग्राउंड में चल रहा हो या फ़ोरग्राउंड सेवा के तौर पर काम कर रहा हो. फ़िलहाल, Android की ज़रूरी जानकारी में, ऑडियो, जगह की जानकारी, और JobScheduler के उपयोगकर्ता के शुरू किए गए एपीआई से बनाए गए वेक लॉक को, वेक लॉक के हिसाब में शामिल नहीं किया जाता.
Android vitals के 'बहुत ज़्यादा पार्शियल वेक लॉक' डैशबोर्ड में, आपके ऐप्लिकेशन से जुड़े उन वेक लॉक के नाम की जानकारी मिलती है जिन्हें छूट नहीं मिली है. इससे यह पता चलता है कि कौनसे सेशन और कितनी अवधि तक प्रभावित हुए.
अगर 28 दिनों की अवधि में, सभी डिवाइसों पर ऐप्लिकेशन के 5% से ज़्यादा सेशन में बहुत ज़्यादा पार्शियल वेक लॉक होते हैं, तो इससे Play पर आपके ऐप्लिकेशन के दिखने की संभावना कम हो सकती है. ऐसा तब होगा, जब यह मेट्रिक बीटा वर्शन से बाहर आ जाएगी.
जब आपको पता चल जाए कि आपके ऐप्लिकेशन में पार्शियल वेक लॉक की संख्या बहुत ज़्यादा है, तो इस समस्या को ठीक करें.
समस्या ठीक करें
वेक लॉक की वजह से डिवाइस की बैटरी खत्म हो सकती है. इसलिए, अगर कोई दूसरा विकल्प मौजूद है, तो आपको वेक लॉक का इस्तेमाल नहीं करना चाहिए. डिवाइस को चालू रखने के लिए सही एपीआई चुनें दस्तावेज़ की मदद से, आपको अपने ऐप्लिकेशन के लिए सबसे अच्छा समाधान मिल सकता है.
अगर आपको वेक लॉक का इस्तेमाल करना ही है, तो वेक लॉक इस्तेमाल करने के सबसे सही तरीके अपनाएं. इससे यह पक्का किया जा सकेगा कि वेक लॉक की वजह से, डिवाइस की परफ़ॉर्मेंस पर असर न पड़े. खास तौर पर, पक्का करें कि आपने जो भी डिवाइस खरीदा है उसे रिलीज़ कर दिया गया हो. साथ ही, उसे जल्द से जल्द अनलॉक कर दें.
ऐसा हो सकता है कि आपका ऐप्लिकेशन वेक लॉक का इस्तेमाल कर रहा हो. भले ही, आपने वेक लॉक को साफ़ तौर पर हासिल न किया हो. अगर आपको किसी ऐसे ऐप्लिकेशन के वेक लॉक दिखते हैं जिसे आपने नहीं पहचाना है, तो अन्य एपीआई के बनाए गए वेक लॉक की पहचान करें. इससे आपको उन एपीआई की पहचान करने में मदद मिल सकती है जिन्होंने उन्हें बनाया है.
कोड में समस्या ठीक करने के बाद, लोकल वेक लॉक डीबग करने वाले टूल का इस्तेमाल करके, ठीक की गई समस्याओं की पुष्टि की जा सकती है.
यह भी देखें:
आपके लिए सुझाव
- ध्यान दें: JavaScript बंद होने पर लिंक टेक्स्ट दिखता है
- रुके हुए फ़्रेम
- लगातार इंटिग्रेशन में परफ़ॉर्मेंस की जांच करना
- मैक्रोबेंचमार्क के बिना, बेसलाइन प्रोफ़ाइलें बनाना और उनका आकलन करना