2015-10-12 2 views
7

बस यह सत्यापित करना चाहता था कि Application.onCreate()BroadcastReceiver.onReceive() से पहले बुलाया जाने की गारंटी है? मान लें कि आप बूट प्रसारण या एसएमएस प्रसारण का इंतजार कर रहे हैं, क्या आप सुनिश्चित कर सकते हैं कि Application.onCreate() आपको BroadcastReceiver.onReceive() तक पहुंचने से पहले एक बार बुलाया जा चुका है? धन्यवादक्या एप्लीकेशन.ऑनक्रेट (बंडल) ब्रॉडकास्ट रिसीवर.ऑन रिसीव (..) से पहले बुलाया जाएगा?

उत्तर

5

public void onReceive(Context context, Intent intent) आप एक स्थिर रिसीवर पंजीकृत करते हैं, संदर्भ से अन्यथा यह संदर्भ जहां

+0

खैर मैं सिर्फ प्रकट में रिसीवर को विन्यस्त। तो इस बारे में निष्कर्ष क्या है जिसके बारे में पहली बार कॉल करने की गारंटी है: MyAplication.onCreate (बंडल) या MyBroadcastReceiver.onReceive()। – MuayThai

+0

यह बहुत उचित है, अगर आप 'onReceive' के अंदर' context.getAplicationContext() 'को कॉल करते हैं, तो यह क्या वापस आएगा? – Neil

10

साथ registerReceiver फोन डॉक्स हमें निम्नलिखित को बयां करती हैं एप्लिकेशन है:

सार्वजनिक शून्य onCreate()

एप्लिकेशन शुरू होने पर कॉल किया गया, किसी भी गतिविधि, सेवा, से पहले या रिसीवर ऑब्जेक्ट्स (सामग्री प्रदाताओं को छोड़कर) बनाए गए हैं।

यहाँ मिला: http://developer.android.com/reference/android/app/Application.html

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