我是新來問的,所以我希望我的問題得到正確的詢問。提前致謝!從AlarmManager調用的BroadcastReceiver上的Activity調用方法
我的問題是:
一個BroadcastReceiver
通過這種方式AlarmManager
稱爲一個方法相同BroadcastReceiver
內:
AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Intent i = new Intent(context, Receiver.class);
PendingIntent pi = PendingIntent.getBroadcast(context, 0, i, 0);
am.setRepeating(AlarmManager.RTC_WAKEUP,
System.currentTimeMillis(), 5000, pi);
onRecieve工作,直到我把那裏從MainActivity
方法。當調用的代碼,每次我得到這個錯誤的AlarmManager
嘗試啓動的onReceive:如果我上創建臨危MainActivity
的BroadcastReceiver
的方法
12-22 21:56:01.020: W/BroadcastQueue(2192): Unable to launch app com.example/10000 for broadcast Intent { flg=0x14 cmp=com.example/.Receiver (has extras) }: process is bad
,我可以打電話從MainActivity
該方法中的方法BroadcastReceiver:
public void SetHandler(Context context, MainActivity main) {
MainActivity mainactivity;
this.mainactivity = main;
mainactivity.method();
}
但我不明白如何在BroadcastReceiver的onReceive內調用它們。
mainactivity.method()
onRecieve不起作用,我不知道是不是因爲它沒有附加到MainActivity
的AlarmManager
或者是因爲我做錯了。
如果問題是由於活動與BroadcastReceiver的附件,它是如何完成的? 如果這不是問題,它會是什麼?