在我的活動中,我嘗試註銷Broadcast Receiver
。我只是把這條線取消註冊。如何檢查廣播註銷或不在android?
unregisterReceiver(myBroadcastReceiver);
但問題是,我的Broadcast
是註銷兩個條件
1)一個,如果我得到的結果在我的onActvityResult
2)onDestroy
但問題是,當我的Broadcast Receiver
從onActvityResult
取消註冊,當用戶嘗試關閉Activity
時,我的onDestroy
被調用,我的應用程序崩潰。
我的logcat:
造成的:java.lang.IllegalArgumentException異常:接收器不 註冊: com[email protected]831c755 在android.app.LoadedApk .forgetReceiverDispatcher(LoadedApk.java:782) 在android.app.ContextImpl.unregisterReceiver(ContextImpl.java:1205) 在 android.content.ContextWrapper.unregisterReceiver(ContextWrapper.java:586) 在 com.coincide.ridetog.post_ride.PostRideActvity.onDestroy(PostRideActvity.java:300)
這是我onDestroy()
@Override
protected void onDestroy() {
super.onDestroy();
if (myBroadcastReceiver!=null) {
unregisterReceiver(myBroadcastReceiver);
}
}
您已檢查myBroadcastReceiver是否爲空。什麼阻止你從明顯的(程序員)使用它的方式? – Selvin
此外,它似乎像某種錯誤的BroadcastReceiver ...你試過,如果你的應用程序的作品,如果「不要保持活動」在 – Selvin