Unregistering Android Broadcast Receiver in onReceive throws “Receiver not registered”

前端 未结 7 873
半阙折子戏
半阙折子戏 2020-12-15 04:13

I have a BroadcastReceiver for one time use.

I\'m registering it in an Activity. I can\'t put the unregisterReceiver() in onPause

7条回答
  •  孤城傲影
    2020-12-15 05:03

    A BroadcastReceiver only exists during the execution of its onReceive() method. So, this evaluates to a throw-away instance every time the broadcast is fired/received. See Broadcast Receiver Lifecycle. For dynamically registering/unregistering of BroadcastReceivers, you have to remember the instance of your receiver in onPause() to register it again during onResume().

提交回复
热议问题