6

जब मेरे एंड्रॉइड डिवाइस पर बैटरी मर जाती है डिवाइस के "पावरिंग ऑफ" चरण के दौरान गतिविधि और फ्रैगमेंट कक्षाओं (यदि कोई हो) में कौन सी विधियां बुलाई जाती हैं?बैटरी मरने पर एंड्रॉइड विधियों को क्या कहा जाता है?

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

ऑनपॉज़?

ऑनस्टॉप?

OnDestroy?

ऑनडेटा?

बोनस: क्या मेरे पास वेब सर्वर पर थोड़ी सी मात्रा को सहेजने के लिए पर्याप्त समय होगा?

डिवाइस की बैटरी 'पूरी तरह से' मृत होने पर "मर जाती है" को स्पष्ट करने के लिए, कोई और इनपुट स्वीकार नहीं करता है और "पावरिंग ऑफ" बताते हुए स्क्रीन पर एक संदेश बॉक्स/लोडिंग स्क्रीन पॉप अप होती है। डिवाइस बंद होने के तुरंत बाद।

मुझे फोन स्विच करने से पहले फॉर्म फॉर्म को बचाने के लिए पर्याप्त समय चाहिए, मेरे पास सहेजे गए डेटा को साफ करने की रणनीति है, फ़ोन को बंद नहीं करना चाहिए, लेकिन मैं जितना संभव हो सके फोन स्विचिंग के करीब जाना चाहता हूं (एक मिनट से भी अधिक वास्तव में व्यर्थ है)।

+1

उनमें से कोई भी नहीं। इसके लिए आपको एक प्रसारण रिसीवर का उपयोग करने की आवश्यकता है। – Rohit5k2

+1

@ रोहित 5k2: उस पुष्टि के लिए उनमें से कोई भी स्रोत नहीं है? (हम एक नियंत्रित बिजली बंद के बारे में बात कर रहे हैं, अचानक बैटरी हटाने नहीं) – njzk2

उत्तर

4

OnDestroy सब कुछ पर कहा जाता है की जरूरत है

संपादित करें: कोई निर्दिष्ट समय आप में कुछ करने की जरूरत है कि नहीं है कम/मृत बैटरी के परिणामस्वरूप शट डाउन प्रक्रिया, जो विशिष्ट फोन बैटरी पर निर्भर होगी, न कि सिस्टम, इसलिए आपके पास कुछ फोन पर डेटा को वेब सर्वर पर सहेजने के लिए पर्याप्त समय हो सकता है लेकिन दूसरों को नहीं। प्रयोगात्मक रूप से, मैं केवल उस फ़ाइल के लिए एक छोटी सी रेखा लिखने में सक्षम हूं जिसे मैं पहले से ही लिख रहा था, डेस्ट्रॉय को बुलाया गया था और कुछ भी नहीं।

+1

क्या आपके पास उस पुष्टिकरण और उस नंबर को वापस करने का स्रोत है? – njzk2

+2

https://android.googlesource.com/platform/frameworks/base/+/625239a05401bbf18b04d9874cea3f82da7c29a1/services/java/com/android/server/BatteryService.java – John

+0

0.5% बैटरी हैंडलिंग में 0 से गोल करने के लिए चिह्न है इसलिए shutdownIfNoPower () लिंक में कॉल किया जाएगा जिसे मैंने अभी पोस्ट किया है – John

2

आपके द्वारा वर्णित विधियों में गतिविधि जीवन चक्र कॉलबैक है, उनमें से कोई भी बैटरी कम होने पर कॉल नहीं किया जाएगा। आप इस

के लिए एक प्रसारण रिसीवर का उपयोग करने के लिए देखें जब बैटरी 0.5% तक पहुँच जाता है इस How to detect when the Battery's low : Android?

+0

डिवाइस वास्तव में शक्तियों से पहले मुझे प्राप्त होने वाली आखिरी घटना क्या होगी? और मोटे तौर पर, फोन से पहले स्वचालित रूप से शक्तियों से पहले कितना समय होगा? – Smithy

+0

यह प्रत्येक परिवर्तन पर रिसीवर को ट्रिगर करेगा। जब आप फिट देखते हैं तो आप कार्रवाई कर सकते हैं। – Rohit5k2

संबंधित मुद्दे