बैटरी की तकनीकी क्वालिटी से जुड़ी नीति लागू की जा रही है: वेक लॉक के सामान्य इस्तेमाल के उदाहरणों को ऑप्टिमाइज़ करने का तरीका
पढ़ने में 8 मिनट लगेंगे
Google को पता है कि Android इस्तेमाल करने वाले लोगों के लिए, बैटरी का ज़्यादा खर्च होना एक बड़ी समस्या है. इसलिए, Google ने डेवलपर को ऐसे ऐप्लिकेशन बनाने में मदद करने के लिए अहम कदम उठाए हैं जो कम बैटरी खर्च करते हैं. Google Play Store ने 1 मार्च, 2026 से, तेज़ी से बैटरी खर्च होने की समस्या को ठीक करने के लिए, वेक लॉक की तकनीकी क्वालिटी से जुड़े बदलाव लागू करने शुरू कर दिए हैं. ये बदलाव, आने वाले हफ़्तों में उन ऐप्लिकेशन पर धीरे-धीरे लागू किए जाएंगे जिन पर इनका असर पड़ेगा. अगर कोई ऐप्लिकेशन, Android की ज़रूरी जानकारी में "पार्शियल वेक लॉक का ज़्यादा इस्तेमाल" के थ्रेशोल्ड से ज़्यादा बैटरी खर्च करता है, तो उसके स्टोर पेज पर इसका असर दिख सकता है. जैसे, स्टोर पेज पर चेतावनियां दिखना और सुझाव जैसी खोज की जगहों से बाहर होना.
अगर आपका ऐप्लिकेशन, ऐप्लिकेशन की खराब परफ़ॉर्मेंस के थ्रेशोल्ड से ज़्यादा बैटरी खर्च करता है, तो उपयोगकर्ताओं को आपके स्टोर पेज पर चेतावनी दिख सकती है.
इस पहल के तहत, बैटरी की परफ़ॉर्मेंस को, क्रैश और एएनआर जैसी स्थिरता की मेट्रिक के साथ, सबसे ज़रूरी मेट्रिक में शामिल किया गया है. "खराब परफ़ॉर्मेंस के थ्रेशोल्ड" का मतलब है कि पिछले 28 दिनों में 5% से ज़्यादा उपयोगकर्ता सेशन में, स्क्रीन बंद होने पर भी, औसतन दो घंटे तक, पार्शियल वेक लॉक का इस्तेमाल किया गया हो. हालांकि, कुछ मामलों में पार्शियल वेक लॉक का इस्तेमाल किया जा सकता है. अगर वेक लॉक, सिस्टम का वेक लॉक है और इससे उपयोगकर्ताओं को साफ़ तौर पर फ़ायदा मिलता है, तो उसे इस्तेमाल किया जा सकता है. जैसे, ऑडियो चलाना, जगह की जानकारी का ऐक्सेस या उपयोगकर्ता की ओर से शुरू किया गया डेटा ट्रांसफ़र. इन मामलों में, वेक लॉक को ऑप्टिमाइज़ नहीं किया जा सकता. वेक लॉक के ज़्यादा इस्तेमाल की पूरी जानकारी के लिए, Android की ज़रूरी जानकारी से जुड़े दस्तावेज़ पढ़ें.
Android इकोसिस्टम में बैटरी लाइफ़ को बेहतर बनाने की हमारी पहल जारी है. इसके तहत, हमने हज़ारों ऐप्लिकेशन और पार्शियल वेक लॉक के इस्तेमाल के तरीके का विश्लेषण किया है. कभी-कभी वेक लॉक का इस्तेमाल करना ज़रूरी होता है. हालांकि, अक्सर ऐसा देखा जाता है कि ऐप्लिकेशन, वेक लॉक का इस्तेमाल सही तरीके से या बिना किसी वजह के करते हैं. जबकि, ज़्यादा बेहतर समाधान मौजूद हैं. इस ब्लॉग में, वेक लॉक के ज़्यादा इस्तेमाल के सबसे सामान्य उदाहरणों और वेक लॉक को ऑप्टिमाइज़ करने के लिए हमारे सुझावों के बारे में बताया जाएगा.हमें WHOOP जैसे पार्टनर से पहले ही काफ़ी सफलता मिली है. WHOOP ने बैकग्राउंड में ऐप्लिकेशन के इस्तेमाल को ऑप्टिमाइज़ करने के लिए, इन सुझावों का इस्तेमाल किया है.
पार्शियल वेक लॉक के बजाय फ़ोरग्राउंड सेवा का इस्तेमाल करना
हमने अक्सर देखा है कि डेवलपर को बैकग्राउंड में ऐप्लिकेशन के इस्तेमाल के दौरान, दो कॉन्सेप्ट के बीच का अंतर समझने में परेशानी होती है: फ़ोरग्राउंड सेवा और पार्शियल वेक लॉक.
फ़ोरग्राउंड सेवा, लाइफ़साइकल एपीआई है. यह सिस्टम को बताता है कि कोई ऐप्लिकेशन, उपयोगकर्ता के लिए काम कर रहा है. इसलिए, मेमोरी खाली करने के लिए उसे बंद नहीं किया जाना चाहिए. हालांकि, स्क्रीन बंद होने पर, यह सीपीयू को अपने-आप स्लीप मोड में जाने से नहीं रोकता. इसके उलट, पार्शियल वेक लॉक एक ऐसा मैकेनिज़्म है जिसे खास तौर पर, स्क्रीन बंद होने पर भी सीपीयू को चालू रखने के लिए डिज़ाइन किया गया है.
उपयोगकर्ता की कार्रवाई को जारी रखने के लिए, अक्सर फ़ोरग्राउंड सेवा का इस्तेमाल करना ज़रूरी होता है. हालांकि, पार्शियल वेक लॉक का मैन्युअल तरीके से इस्तेमाल सिर्फ़ तब ज़रूरी होता है, जब सीपीयू की गतिविधि के दौरान, फ़ोरग्राउंड सेवा का इस्तेमाल किया जा रहा हो. इसके अलावा, अगर पहले से ही किसी ऐसे एपीआई का इस्तेमाल किया जा रहा है जिससे डिवाइस चालू रहता है, तो आपको वेक लॉक का इस्तेमाल करने की ज़रूरत नहीं है.
डिवाइस को चालू रखने के लिए सही एपीआई चुनना लेख में दिया गया फ़्लोचार्ट देखें. इससे आपको यह समझने में मदद मिलेगी कि किन स्थितियों में वेक लॉक का इस्तेमाल नहीं करना चाहिए और इसके लिए किस टूल का इस्तेमाल करना चाहिए.
वेक लॉक का इस्तेमाल करने वाली तीसरे पक्ष की लाइब्रेरी
आम तौर पर, किसी ऐप्लिकेशन को यह पता चलता है कि उसे वेक लॉक के ज़्यादा इस्तेमाल के लिए फ़्लैग किया गया है. ऐसा तीसरे पक्ष के SDK टूल या सिस्टम एपीआई की वजह से होता है, जो ऐप्लिकेशन की ओर से काम करता है. इन वेक लॉक की पहचान करने और उन्हें ठीक करने के लिए, हमारा सुझाव है कि आप यह तरीका अपनाएं:
- Android की ज़रूरी जानकारी देखें: पार्शियल वेक लॉक के ज़्यादा इस्तेमाल की जानकारी देने वाले डैशबोर्ड में, वेक लॉक का सही नाम ढूंढें. यह देखने के लिए कि वेक लॉक, किसी जाने-माने सिस्टम एपीआई या Jetpack लाइब्रेरी से बनाया गया है या नहीं, इस नाम का क्रॉस-रेफ़रंस दूसरे एपीआई से बनाए गए वेक लॉक की पहचान करना लेख में दिए गए निर्देशों से करें. अगर ऐसा है, तो आपको एपीआई के इस्तेमाल को ऑप्टिमाइज़ करना पड़ सकता है. इसके लिए, सुझाए गए निर्देश देखें.
- सिस्टम ट्रेस कैप्चर करें: अगर वेक लॉक की आसानी से पहचान नहीं की जा सकती, तो सिस्टम ट्रेस का इस्तेमाल करके, वेक लॉक की समस्या को स्थानीय तौर पर दोहराएं. इसके बाद, Perfetto यूज़र इंटरफ़ेस की मदद से इसकी जांच करें. इस बारे में ज़्यादा जानने के लिए, इस ब्लॉग पोस्ट का वेक लॉक के ज़्यादा इस्तेमाल से जुड़ी अन्य गड़बड़ियों को ठीक करना सेक्शन पढ़ें.
- अन्य विकल्प देखें: अगर तीसरे पक्ष की कोई ऐसी लाइब्रेरी इस्तेमाल की जा रही है जो सही तरीके से काम नहीं करती और उसे बैटरी लाइफ़ के हिसाब से कॉन्फ़िगर नहीं किया जा सकता, तो SDK टूल के मालिकों से इस समस्या के बारे में बात करें. इसके अलावा, कोई दूसरा SDK टूल ढूंढें या इन-हाउस फ़ंक्शनैलिटी बनाएं.
वेक लॉक के सामान्य उदाहरण
यहां, इस्तेमाल के कुछ ऐसे उदाहरण दिए गए हैं जिनकी हमने समीक्षा की है. साथ ही, वेक लॉक के इस्तेमाल को ऑप्टिमाइज़ करने के लिए, सुझाया गया तरीका भी बताया गया है.
उपयोगकर्ता की ओर से अपलोड या डाउनलोड करना
इस्तेमाल के उदाहरण:
- वीडियो स्ट्रीमिंग ऐप्लिकेशन, जिनमें उपयोगकर्ता ऑफ़लाइन ऐक्सेस के लिए कोई बड़ी फ़ाइल डाउनलोड करता है.
- मीडिया बैकअप ऐप्लिकेशन, जिनमें उपयोगकर्ता सूचना के ज़रिए, हाल ही की अपनी फ़ोटो अपलोड करता है.
वेक लॉक के इस्तेमाल को कम करने का तरीका:
- वेक लॉक का मैन्युअल तरीके से इस्तेमाल न करें. इसके बजाय, User-Initiated Data Transfer (UIDT) API का इस्तेमाल करें. यह, उपयोगकर्ता की ओर से शुरू किए गए, डेटा ट्रांसफ़र के लंबे समय तक चलने वाले टास्क के लिए तय किया गया तरीका है. इसे वेक लॉक के ज़्यादा इस्तेमाल की गणना में शामिल नहीं किया जाता.
एक बार या समय-समय पर होने वाले बैकग्राउंड सिंक
इस्तेमाल के उदाहरण:
- कोई ऐप्लिकेशन, ऑफ़लाइन ऐक्सेस के लिए डेटा फ़ेच करने के लिए, समय-समय पर बैकग्राउंड सिंक करता है.
- पैडोमीटर ऐप्लिकेशन, जो समय-समय पर कदमों की संख्या फ़ेच करते हैं.
वेक लॉक के इस्तेमाल को कम करने का तरीका:
- वेक लॉक का मैन्युअल तरीके से इस्तेमाल न करें. एक बार या समय-समय पर होने वाले काम के लिए कॉन्फ़िगर किए गए WorkManager का इस्तेमाल करें.
WorkManager, टास्क को बैच करके, सिस्टम की परफ़ॉर्मेंस को बेहतर बनाता है. साथ ही, इसमें समय-समय पर होने वाले काम के लिए कम से कम 15 मिनट का इंटरवल होता है. यह आम तौर पर, बैकग्राउंड में होने वाले अपडेट के लिए काफ़ी होता है. - अगर आपको
WorkManagerया JobScheduler से बनाए गए वेक लॉक की पहचान होती है और वेक लॉक का इस्तेमाल ज़्यादा होता है, तो इसकी वजह यह हो सकती है कि आपने वर्कर को गलत तरीके से कॉन्फ़िगर किया है, ताकि वह कुछ स्थितियों में काम न करे. वर्कर के बंद होने की वजहों का विश्लेषण करें. खास तौर पर, अगर आपको STOP_REASON_TIMEOUT की ज़्यादा घटनाएं दिख रही हैं.
workManager.getWorkInfoByIdFlow(syncWorker.id)
.collect { workInfo ->
if (workInfo != null) {
val stopReason = workInfo.stopReason
logStopReason(syncWorker.id, stopReason)
}
}- वर्कर के बंद होने की वजहों को लॉग करने के अलावा, अपने वर्कर को डीबग करना लेख में दिया गया हमारा दस्तावेज़ देखें. साथ ही, यह समझने के लिए कि वेक लॉक कब इस्तेमाल किए जाते हैं और कब रिलीज़ किए जाते हैं, सिस्टम ट्रेस इकट्ठा करने और उनका विश्लेषण करने पर विचार करें.
- आखिर में, WHOOP के साथ हमारी केस स्टडी देखें. इसमें बताया गया है कि WHOOP ने अपने वर्कर के कॉन्फ़िगरेशन में मौजूद समस्या का पता कैसे लगाया और वेक लॉक के असर को कैसे कम किया.
ब्लूटूथ कम्यूनिकेशन
इस्तेमाल के उदाहरण:
- कंपैनियन डिवाइस ऐप्लिकेशन, उपयोगकर्ता को ब्लूटूथ वाले बाहरी डिवाइस को दूसरे डिवाइस से जोड़ने के लिए कहता है.
- कंपैनियन डिवाइस ऐप्लिकेशन, बाहरी डिवाइस पर हार्डवेयर इवेंट और सूचना में उपयोगकर्ता को दिखने वाले बदलावों को सुनता है.
- कंपैनियन डिवाइस के ऐप्लिकेशन का उपयोगकर्ता, मोबाइल और ब्लूटूथ डिवाइस के बीच फ़ाइल ट्रांसफ़र शुरू करता है.
- साथ काम करने वाले डिवाइस का ऐप्लिकेशन, ब्लूटूथ के ज़रिए बाहरी डिवाइस के फ़र्मवेयर को समय-समय पर अपडेट करता है.
वेक लॉक के इस्तेमाल को कम करने का तरीका:
- ब्लूटूथ डिवाइसों को पेयर करने के दौरान, वेक लॉक का मैन्युअल तरीके से इस्तेमाल करने से बचने के लिए, कंपैनियन डिवाइस को डिवाइस से जोड़ने की सुविधा का इस्तेमाल करें.
- बैकग्राउंड में ब्लूटूथ कम्यूनिकेशन करने का तरीका समझने के लिए, बैकग्राउंड में कम्यूनिकेट करना लेख में दिए गए निर्देश देखें.
- अगर कम्यूनिकेशन में देरी होने से उपयोगकर्ता पर कोई असर नहीं पड़ता है, तो अक्सर
WorkManagerका इस्तेमाल करना काफ़ी होता है. अगर वेक लॉक का मैन्युअल तरीके से इस्तेमाल करना ज़रूरी है, तो वेक लॉक का इस्तेमाल सिर्फ़ ब्लूटूथ गतिविधि के दौरान या गतिविधि से जुड़े डेटा की प्रोसेसिंग के दौरान करें.
स्थान ट्रैकिंग
इस्तेमाल के उदाहरण:
- फ़िटनेस ऐप्लिकेशन, जो बाद में अपलोड करने के लिए जगह की जानकारी का डेटा कैश करते हैं. जैसे, दौड़ने के रूट की जानकारी प्लॉट करना
- खाने-पीने की चीज़ें डिलीवर करने वाले ऐप्लिकेशन, जो सूचना या विजेट यूज़र इंटरफ़ेस में डिलीवरी की प्रोग्रेस को अपडेट करने के लिए, ज़्यादा फ़्रीक्वेंसी पर जगह की जानकारी का डेटा पुल करते हैं.
वेक लॉक के इस्तेमाल को कम करने का तरीका:
- जगह की जानकारी के इस्तेमाल को ऑप्टिमाइज़ करना लेख में दिए गए हमारे निर्देश देखें. बैटरी की परफ़ॉर्मेंस को बेहतर बनाने के लिए, टाइमआउट लागू करने, जगह की जानकारी के अनुरोधों को बैच करने या जगह की जानकारी के पैसिव अपडेट का इस्तेमाल करने पर विचार करें.
- When जगह की जानकारी के अपडेट का अनुरोध करने के लिए FusedLocationProvider या LocationManager API का इस्तेमाल किया जाता है, तो सिस्टम, जगह की जानकारी के इवेंट कॉलबैक के दौरान, डिवाइस को अपने-आप वेक अप कर देता है. सिस्टम की ओर से मैनेज किए जाने वाले इस छोटे से वेक लॉक को, पार्शियल वेक लॉक के ज़्यादा इस्तेमाल की गणना में शामिल नहीं किया जाता.
- जगह की जानकारी का डेटा कैश करने के लिए, अलग से लगातार वेक लॉक का इस्तेमाल न करें, क्योंकि यह ज़रूरत से ज़्यादा है. इसके बजाय, जगह की जानकारी के इवेंट को मेमोरी या लोकल स्टोरेज में सेव करें और उन्हें समय-समय पर प्रोसेस करने के लिए, WorkManager का इस्तेमाल करें.
override fun onCreate(savedInstanceState: Bundle?) {
locationCallback = object : LocationCallback() {
override fun onLocationResult(locationResult: LocationResult?) {
locationResult ?: return
// System wakes up CPU for short duration
for (location in locationResult.locations){
// Store data in memory to process at another time
}
}
}
}ज़्यादा फ़्रीक्वेंसी पर सेंसर की निगरानी करना
इस्तेमाल के उदाहरण:
- पैडोमीटर ऐप्लिकेशन, जो पैसिव तरीके से कदमों की संख्या या तय की गई दूरी इकट्ठा करते हैं.
- सुरक्षा से जुड़े ऐप्लिकेशन, जो रीयल टाइम में तेज़ी से होने वाले बदलावों के लिए, डिवाइस के सेंसर की निगरानी करते हैं. इससे, क्रैश का पता लगाना या गिरने का पता लगाना जैसी सुविधाएं मिलती हैं.
वेक लॉक के इस्तेमाल को कम करने का तरीका:
- अगर SensorManager का इस्तेमाल किया जा रहा है, तो इसके इस्तेमाल को समय-समय पर होने वाले इंटरवल तक सीमित करें. साथ ही, इसका इस्तेमाल सिर्फ़ तब करें, जब उपयोगकर्ता ने यूज़र इंटरफ़ेस के ज़रिए साफ़ तौर पर ऐक्सेस की अनुमति दी हो. ज़्यादा फ़्रीक्वेंसी पर सेंसर की निगरानी करने से, बैटरी तेज़ी से खत्म हो सकती है. इसकी वजह यह है कि सीपीयू के वेक अप होने और प्रोसेसिंग की संख्या ज़्यादा होती है.
- अगर कदमों की संख्या या तय की गई दूरी को ट्रैक किया जा रहा है, तो SensorManager का इस्तेमाल करने के बजाय, Recording API का इस्तेमाल करें. इसके अलावा, बैटरी की परफ़ॉर्मेंस को बेहतर बनाने के लिए, Health Connect का इस्तेमाल करके, डिवाइस के कदमों की संख्या का पुराना और इकट्ठा किया गया डेटा ऐक्सेस करें.
- अगर SensorManager के साथ कोई सेंसर रजिस्टर किया जा रहा है, तो सेंसर बैचिंग का इस्तेमाल करने के लिए, maxReportLatencyUs को 30 सेकंड या उससे ज़्यादा पर सेट करें. इससे, सीपीयू इंटरप्ट की फ़्रीक्वेंसी को कम किया जा सकेगा. जब डिवाइस को किसी अन्य ट्रिगर से वेक अप किया जाता है, जैसे कि उपयोगकर्ता का इंटरैक्शन, जगह की जानकारी को वापस पाना या शेड्यूल की गई जॉब, तो सिस्टम, कैश किए गए सेंसर डेटा को तुरंत भेज देगा.
val accelerometer = sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER)
sensorManager.registerListener(this,
accelerometer,
samplingPeriodUs, // How often to sample data
maxReportLatencyUs // Key for sensor batching
)- अगर आपके ऐप्लिकेशन को जगह की जानकारी और सेंसर डेटा, दोनों की ज़रूरत है, तो उनके इवेंट को वापस पाने और प्रोसेस करने की प्रोसेस को सिंक करें. जगह की जानकारी के अपडेट के लिए, सिस्टम जिस छोटे से वेक लॉक का इस्तेमाल करता है उसमें सेंसर रीडिंग को शामिल करके, सीपीयू को चालू रखने के लिए वेक लॉक का इस्तेमाल करने से बचा जा सकता है. इस इकट्ठा किए गए डेटा को अपलोड और प्रोसेस करने के लिए, वर्कर या कम समय के लिए इस्तेमाल होने वाले वेक लॉक का इस्तेमाल करें.
रिमोट मैसेज सेवा
इस्तेमाल के उदाहरण:
- वीडियो या आवाज़ की निगरानी करने वाले साथ काम करने वाले ऐप्लिकेशन, जिन्हें लोकल नेटवर्क का इस्तेमाल करके कनेक्ट किए गए बाहरी डिवाइस पर होने वाले इवेंट की निगरानी करनी होती है.
- मैसेजिंग ऐप्लिकेशन, जो डेस्कटॉप वर्शन के साथ नेटवर्क सॉकेट कनेक्शन बनाए रखते हैं.
वेक लॉक के इस्तेमाल को कम करने का तरीका:
- अगर नेटवर्क इवेंट को सर्वर साइड पर प्रोसेस किया जा सकता है, तो क्लाइंट पर जानकारी पाने के लिए, FCM का इस्तेमाल करें. अगर FCM डेटा की अतिरिक्त प्रोसेसिंग की ज़रूरत है, तो तेज़ी से काम करने वाले वर्कर को शेड्यूल किया जा सकता है.
- अगर इवेंट को सॉकेट कनेक्शन के ज़रिए क्लाइंट साइड पर प्रोसेस करना ज़रूरी है, तो इवेंट इंटरप्ट को सुनने के लिए, वेक लॉक की ज़रूरत नहीं होती. जब डेटा पैकेट, वाई-फ़ाई या सेल्युलर रेडियो पर पहुंचते हैं, तो रेडियो हार्डवेयर, कर्नल वेक लॉक के तौर पर हार्डवेयर इंटरप्ट को ट्रिगर करता है. इसके बाद, डेटा को प्रोसेस करने के लिए, वर्कर को शेड्यूल किया जा सकता है या वेक लॉक का इस्तेमाल किया जा सकता है.
- उदाहरण के लिए, अगर नेटवर्क सॉकेट पर डेटा पैकेट सुनने के लिए, ktor-network का इस्तेमाल किया जा रहा है, तो वेक लॉक का इस्तेमाल सिर्फ़ तब करें, जब पैकेट क्लाइंट को डिलीवर कर दिए गए हों और उन्हें प्रोसेस करना हो.
val readChannel = socket.openReadChannel()
while (!readChannel.isClosedForRead) {
// CPU can safely sleep here while waiting for the next packet
val packet = readChannel.readRemaining(1024)
if (!packet.isEmpty) {
// Data Arrived: The system woke the CPU and we should keep it awake via manual wake lock (urgent) or scheduling a worker (non-urgent)
performWorkWithWakeLock {
val data = packet.readBytes()
// Additional logic to process data packets
}
}
}खास जानकारी
बैकग्राउंड सिंक, जगह की जानकारी को ट्रैक करने, सेंसर की निगरानी करने, और नेटवर्क कम्यूनिकेशन जैसे सामान्य इस्तेमाल के उदाहरणों के लिए, सुझाए गए इन समाधानों को अपनाकर, डेवलपर वेक लॉक के ज़रूरत से ज़्यादा इस्तेमाल को कम कर सकते हैं. ज़्यादा जानने के लिए, हमारी अन्य तकनीकी ब्लॉग पोस्ट पढ़ें या वेक लॉक को ढूंढने और डीबग करने के तरीके के बारे में हमारा तकनीकी वीडियो देखें: Android की ज़रूरी जानकारी में शामिल वेक लॉक मेट्रिक का इस्तेमाल करके, अपने ऐप्लिकेशन की बैटरी को ऑप्टिमाइज़ करना. इसके अलावा, वेक लॉक से जुड़े हमारे अपडेट किए गए दस्तावेज़ देखें. हमारे तकनीकी संसाधनों को बेहतर बनाने में हमारी मदद करने के लिए, कृपया हमारे दस्तावेज़ में दिए गए निर्देशों के बारे में कोई अन्य सुझाव/राय/शिकायत, हमारे दस्तावेज़ के बारे में सुझाव/राय/शिकायत वाले सर्वे में शेयर करें.
-
तरीका बताने वाले लेखऐप्लिकेशन की परफ़ॉर्मेंस को अक्सर, बेहतर यूज़र इंटरफ़ेस और तेज़ी से शुरू होने वाले समय के तौर पर देखा जाता है. हालांकि, मेमोरी, इन दिखने वाली मेट्रिक की नींव होती है. यह कोई रहस्य नहीं है कि अब डिवाइस की मेमोरी, पहले से कहीं ज़्यादा ज़रूरी हो गई है.
Alice Yuan, Ajesh Pai, Fung Lam • पढ़ने में 10 मिनट लगेंगे -
तरीका बताने वाले लेखपरफ़ॉर्मेंस को बेहतर बनाने के लिए, इस गाइड में पांच लेवल दिए गए हैं. हम लेवल 1 से शुरू करेंगे. इसमें, परफ़ॉर्मेंस को बेहतर बनाने वाले ऐसे टूल के बारे में बताया गया है जिन्हें लागू करने में ज़्यादा मेहनत नहीं लगती. इसके बाद, हम लेवल 5 तक जाएंगे. यह उन ऐप्लिकेशन के लिए सही है जिनके पास, परफ़ॉर्मेंस को बेहतर बनाने के लिए, खास फ़्रेमवर्क बनाए रखने के लिए संसाधन मौजूद हैं.
Alice Yuan • पढ़ने में 9 मिनट लगेंगे -
तरीका बताने वाले लेखआज हमें यह बताते हुए खुशी हो रही है कि Google ने पुष्टि किया गया एक नया ईमेल क्रेडेंशियल जारी किया है. अब डेवलपर इसे सीधे Android के Credential Manager Digital Credential API से वापस पा सकते हैं.
Niharika Arora, Jean-Pierre Pralle • पढ़ने में 3 मिनट लगेंगे
Android डेवलपमेंट से जुड़ी नई जानकारी हर हफ़्ते अपने ईमेल में पाएं