【问题标题】:How to unregister a broadcast receiver properly [duplicate]如何正确注销广播接收器[重复]
【发布时间】:2018-02-10 20:05:33
【问题描述】:

我按照这个答案注册了一个接收器,它工作得很好。Here 现在我想知道如何在 ondestroy 中注销它?

【问题讨论】:

  • 你能告诉我你是如何注册它的代码吗?

标签: android broadcastreceiver


【解决方案1】:

取消注册广播接收器很简单,你调用unregisterReceiver方法并将广播接收器传递给它。

根据您分享的答案

1) 将onCreate方法中广播接收器的注册改为

registerReceiver(gpsReceiver, new IntentFilter(LocationManager.PROVIDERS_CHANGED_ACTION));

2) 声明一个全局变量

final BroadcastReceiver gpsReceiver = new GpsReceiver(new LocationCallBack() {
        @Override
        public void onLocationTriggered() {
            //Location state changed
        }
    });

3) 在onDestroy中,注销广播接收器

unregisterReceiver(gpsReceiver);

【讨论】:

    猜你喜欢
    • 2011-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多