मैं एंड्रॉइड के लिए एक संगीत स्ट्रीमिंग ऐप बना रहा हूं।"बैटरी सेवर" फीचर मेरी संगीत सेवा को मार रहा है
इस अनुप्रयोग में, मैं एक Service
जो एक HTTP सर्वर से ऑडियो खेलने के लिए जिम्मेदार है। खेलने से पहले, मैं सुनिश्चित करता हूं कि startForeground()
और आंशिक WakeLock
प्राप्त करें, ताकि मेरी सेवा मारे नहीं जा सके। मुझे बस WifiLock
भी मिलता है।
सेवा ठीक काम करती है ... जब तक मेरा फोन "बैटरी बचत मोड" पर नहीं है। जिस समय मैं बैटरी की बचत चालू करता हूं और अपने फोन को बिजली स्रोत से डिस्कनेक्ट करता हूं, मेरी सेवा आग से मारे जाती है!
दुर्भाग्यवश यह भी नहीं लगता कि onDestroy()
कहा जाता है, इसलिए startForeground()
से मेरी अधिसूचना दिखाई देती है, भले ही सेवा मर गई हो।
फ़ोन सैमसंग गैलेक्सी एस 6 है, जिसमें एंड्रॉइड 6.0.1 है।
दो सवाल:
- वहाँ एक रास्ता मैं सेवा बैटरी सेवर thingy के बावजूद जिंदा रख सकते है?
- यदि नहीं, तो मुझे पता है कि कम से कम जब मेरी सेवा मार दिया जाता है, ताकि मैं सफाई का एक सा कर सकते हैं चाहते हैं (अधिसूचना & आंतरिक सामान निकालने के लिए)।
कोई सुझाव?
आप इस समस्या के लिए एक समाधान मिला? मेरे पास समान मामला है - डिवाइस और सटीक एंड्रॉइड संस्करण के आधार पर या तो ऐप या वाईफाई कनेक्शन सभी wakelocks को अनदेखा कर दिया जाता है – mhenryk
मुझे इसके लिए कोई फिक्स नहीं पता है। यह सुनिश्चित नहीं है कि इसे एंड्रॉइड 7 में भी वास्तव में तय किया गया है ... मेरा ऐप केवल एकमात्र नहीं था: यहां तक कि Google संगीत और स्पॉटिफ़ाई को भी समस्या थी। – aspyct
एंड्रॉइड 7 अभी भी समस्या है। जानकारी के लिए धन्यवाद। – mhenryk