?Android中registerReceiver(mReceiver, mFilter)怎么用

2097
2023/10/7 12:40:26
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Android中,registerReceiver()方法用于注册一个BroadcastReceiver对象,以接收特定类型的广播消息。

使用方法如下:

  1. 创建一个BroadcastReceiver对象和一个IntentFilter对象。
BroadcastReceiver mReceiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        // 在这里处理接收到的广播消息
    }
};

IntentFilter mFilter = new IntentFilter();
mFilter.addAction("android.intent.action.SOME_ACTION"); // 添加你要接收的广播消息的action
  1. 在Activity或Service中调用registerReceiver()方法注册广播接收者。
registerReceiver(mReceiver, mFilter);
  1. 当接收到匹配的广播消息时,BroadcastReceiver的onReceive()方法会被调用。
@Override
public void onReceive(Context context, Intent intent) {
    // 在这里处理接收到的广播消息
}

注意事项:

  • 记得在不需要接收广播消息时调用unregisterReceiver()方法注销广播接收者,避免内存泄漏。
  • 在AndroidManifest.xml文件中声明BroadcastReceiver对象时,也可以指定接收的广播消息的action。这样在应用程序未运行时,也能接收到相应的广播消息。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: ?android中asset的使用方法是什么