我正在嘗試從服務通信/更新UI到活動。我收到的廣播不是我發送的。任何想法爲什麼?使用廣播/意圖在服務和活動之間進行通信
服務代碼:
@Override
//binder returns NULL
public void onStart(Intent intent, int startId) {
// TODO Auto-generated method stub
super.onStart(intent, startId);
Intent i = new Intent();
i.putExtra("lol", "haha");
i.setAction(MYACTION);
sendBroadcast(i);
活動代碼:
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
IntentFilter intentFilter = new IntentFilter(MYACTION);
registerReceiver(recv, intentFilter);
}
BroadcastReceiver recv = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
Intent getintent = getIntent();
String action = getintent.getAction();
//ACTION RECEIVED IS DIFFERENT FROM MYACTION. IT IS ACTION.MAIN
// VALUE RECEIVED IS NULL
String val = getintent.getStringExtra("lol");
}
我還沒有註冊的接收器清單。有必要嗎?
正如在評論中提到的:我沒有在廣播接收器中收到相同的操作,而來自intent的值爲NULL。
我在做什麼錯?
感謝您的幫助。
太棒了,謝謝。有效。 –