在我的應用程序中,我在Service
的onCreate()
方法中註冊了BroadcastReceiver
。從BroadcastReceiver開始活動
registerReceiver(receiver, newIntentFilter(myAction));
現在我需要從每個時間onReceive(Context context, Intent intent)
發生新註冊的BroadcastReceiver
開始活動:
Intent i = new Intent(context,MyClass.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
的「上下文」,其已經被傳遞給我的BroadcastReceiver
的Context
。那成功地工作並且開始了Activity
。這是從Service
開始在BraodcastReceiver
內的Activity
的正確和可靠的方法嗎?因爲有很多是爲獲取Context
,像getApplicationContext()
或getApplication()
的等
在我的情況下,使用已傳遞給我的BroadcastReceiver
正確的方式Context
?
'BroadcastReceiver'沒有'Context'。當調用'BroadcastReceiver.onReceive()'時它傳遞了一個上下文,但它沒有自己的一個,並且通過繼承不是'Context'。 – Prmths
@Prmths是的,我想說同樣的話,對不起如果我不清楚! – Soheil