broadcastreceiver - Unregistering Android Broadcast Receiver in onReceive throws "Receiver not registered" -
i have broadcastreceiver 1 time use.
i'm registering in activity. can't put unregisterreceiver() in onpause because has stay running when activity paused or destroyed.
i want broadcastreceiver unregister when done, this:
public class smsreceiver extends broadcastreceiver { public void onreceive(context context, intent intent) { // code.. context.unregisterreceiver(this) } } but causes exception: receiver not registered.
a broadcastreceiver exists during execution of onreceive() method. so, this evaluates throw-away instance every time broadcast fired/received. see broadcast receiver lifecycle. dynamically registering/unregistering of broadcastreceivers, have remember instance of receiver in onpause() register again during onresume().
Comments
Post a Comment