मुझे wakelock के बारे में सवाल है। नीचे दिखाए गए मामलों में, एंड्रॉइड ओएस रिलीज वाकेलॉक (PARTIAL_WAKE_LOCK
यदि आपको निर्दिष्ट करने की आवश्यकता है) को रोकने के लिए wakelock को छोड़ दिया गया था और बिजली बंद करने तक (बैटरी नहीं) तक बैटरी बर्बाद कर रहा था।क्या एंड्रॉइड ओएस एक वॉकलॉक जारी करता है यदि ऐप या सेवा को मार दिया जाता है?
केस 1-एक:
अनुप्रयोग wakelock (/ ओ टाइमआउट विकल्प डब्ल्यू) अपने धागे में से एक में (कृपया लगता है कि यह इस मामले में उचित है) का अधिग्रहण किया गया है और यह wakelock जारी करने के लिए जब गंभीर कार्य था डिजाइन किया गया था ख़त्म होना। ऐप को टास्कमैनगर या कुख्यात टास्ककिल्लर द्वारा मारा जा सकता है, और ऐप के पास थ्रेड रिलीज वाकेलॉक देने का कोई मौका नहीं है। उस वाकेलॉक का क्या होता है?
केस 1-बी:
(। अगर मामला 1-एक का जवाब है "हाँ, चिंता मत करो", तो इस मामले को अनदेखा करें) जैसा भी मामला 1-एक लेकिन एप्लिकेशन ही दे दी है टाइमआउट विकल्प wakelock करने के लिए, 3 सेकंड कहते हैं। क्या यह टाइमआउट विकल्प मान्य रखा गया है?
मामला 2-एक:
कृपया कल्पना एक सेवा है जो (ब्रॉडकास्ट रिसीवर के माध्यम से) AlarmManager द्वारा शुरू किया गया है और सेवा एक wakelock (w/ओ टाइमआउट विकल्प) हासिल कर ली है। यह सेवा कमजोर-अधिग्रहित-न्यूनतम न्यूनतम बनाने के लिए डिज़ाइन की गई है। लेकिन दुर्भाग्यवश, एंड्रॉइड ओएस ने मेमोरी क्रंच के कारण मारने के लिए इस सेवा को चुना। (मुझे नहीं पता कि क्या वाकेलॉक अधिग्रहित होने पर ओएस सेवा नहीं मार पाएगा, लेकिन मुझे लगता है कि ओएस परवाह नहीं है। लेकिन मुझे उम्मीद है कि ओएस बाद में वाकेलॉक जारी करेगा।) उस वाकेलॉक का क्या होता है?
केस 2-बी:
(। अगर मामला 2-एक का जवाब है "हाँ, चिंता मत करो", तो इस मामले को अनदेखा करें) जैसा भी मामला 2-एक लेकिन सेवा ही दे दी है टाइमआउट विकल्प wakelock करने के लिए, 3 सेकंड कहते हैं। क्या यह टाइमआउट विकल्प मान्य रखा गया है?
इस 2 साल के पुराने प्रश्न के आपके विस्तृत, स्पष्ट उत्तर के लिए धन्यवाद। आपका जवाब निश्चित रूप से मेरे सहित कई डेवलपर्स की सहायता करता है। – Tomcat
खुशी के साथ, मुझे नहीं पता कि यह पुराना सवाल दिलचस्प क्यों क्रमबद्ध प्रश्न सूची के पहले स्थान पर पहुंचा। @Tomcat – StarPinkER