Android中registerReceiver(mReceiver, mFilter)怎么用
在Android中,registerReceiver()方法用于注册一个BroadcastReceiver对象,以接收特定类型的广播消息。
使用方法如下:
创建一个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
在Activity或Service中调用registerReceiver()方法注册广播接收者。
registerReceiver(mReceiver, mFilter);
当接收到匹配的广播消息时,BroadcastReceiver的onReceive()方法会被调用。
@Override
public void onReceive(Context context, Intent intent) {
// 在这里处理接收到的广播消息
}
注意事项:
记得在不需要接收广播消息时调用unregisterReceiver()方法注销广播接收者,避免内存泄漏。
在AndroidManifest.xml文件中声明BroadcastReceiver对象时,也可以指定接收的广播消息的action。这样在应用程序未运行时,也能接收到相应的广播消息。
阅读剩余
THE END