温馨提示×

关于registerReceiver(mReceiver, mFilter)的用法

小亿
88
2023-12-19 14:45:56
栏目: 编程语言

registerReceiver(mReceiver, mFilter)是Android中注册广播接收器的方法。它的作用是将一个广播接收器对象mReceiver注册到系统中,并指定一个IntentFilter对象mFilter来过滤接收的广播。只有符合IntentFilter中指定的条件的广播才会被接收器接收。

具体用法如下:

  1. 创建一个广播接收器对象mReceiver,继承自BroadcastReceiver,并实现onReceive()方法,该方法用于处理接收到的广播。
  2. 创建一个IntentFilter对象mFilter,用于指定接收的广播类型或者其他条件。
  3. 在需要接收广播的地方调用registerReceiver(mReceiver, mFilter)方法,将广播接收器对象和过滤器对象作为参数传入。

示例代码如下:

// 创建广播接收器对象
BroadcastReceiver mReceiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        // 处理接收到的广播
    }
};

// 创建IntentFilter对象
IntentFilter mFilter = new IntentFilter();
// 添加需要接收的广播类型或其他条件
mFilter.addAction("android.intent.action.BOOT_COMPLETED");

// 注册广播接收器
registerReceiver(mReceiver, mFilter);

这样,在满足IntentFilter中指定的条件时,广播接收器mReceiver就会接收到相应的广播,并调用onReceive()方法进行处理。

0