2009-12-08 15 views
7

TasKiller के लिए धन्यवाद AlarmManager से मेरे AppWidget पर आने वाले अपडेट को बंद करने का मेरा विश्वसनीय तरीका है!एंड्रॉइड - अलार्ममेनगर रिकवरी

अब, कटाक्ष एक तरफ, मैं इस तरह की घटना से कैसे ठीक हो सकता हूं? अब तक मैं केवल देखता हूं कि Alerts फोन को रिबूट करने के बाद ही पुनर्जीवित किया जाता है।

मैं अपने ऐप और मेरे विजेट से संबंधित विभिन्न Activity#onCreate जैसे रिकवरी कोड को छू सकता हूं लेकिन क्या कोई बेहतर तरीका है?

इसके अलावा यदि अलर्ट ठीक हैं तो क्या होगा - क्या इसका पता लगाने का कोई तरीका है और AlarmManager#setRepeating नहीं चला है?

या इसे कई बार चलाने के लिए कोई नुकसान है?

उत्तर

5

अब, कटाक्ष एक तरफ, मैं इस घटना से कैसे पुनर्प्राप्त करूं?

मैंने सुना है कि एकल-माल्ट स्कॉच मदद करता है।

अब तक मैं केवल कि अलर्ट पुनर्जीवित केवल फोन रिबूट करने के बाद कर रहे हैं।

है कि केवल यदि आप BOOT_COMPLETED प्रसारण Intent hooking हैं और अलार्म पुनः स्थापित।

कार्य हत्यारे उल्लेखनीय रूप से पूरी तरह से हैं, लेकिन वे जैसे सिस्टम प्रसारण प्राप्त करने से BroadcastReceiver को रोक नहीं सकते हैं। कुछ अन्य प्रसारण खोजने के लिए आपका स्वागत है जिसे आप नियंत्रण प्राप्त करने और अपने अलार्म को पुनः स्थापित करने में सहायता के लिए प्राप्त करना चाहते हैं।

इसके अलावा क्या हुआ अगर अलर्ट ठीक कर रहे हैं - वहाँ कि पता लगाने के लिए और नहीं चला AlarmManager # setRepeating एक तरीका है? या इसे कई बार चलाने के लिए एक नुकसान है?

आप cancel() एक मौजूदा अलार्म कर सकते हैं। इसलिए, यदि आप संभावित डुप्लिकेट के बारे में चिंतित हैं, तो cancel() वर्तमान अलार्म (जो अलार्म मौजूद नहीं है तो उम्मीदपूर्वक चुपचाप विफल रहता है), फिर अलार्म सेट करें।

+2

ठीक है आपको 'रद्द' भी नहीं करना है - जब आप उसी लंबित इरादे पर शेड्यूल करते हैं तो आपका शेड्यूल स्वचालित रूप से रीसेट हो जाता है। आपकी मदद मार्क के लिए धन्यवाद, बहुत सराहना की – Bostone

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