是什么BroadcastReceiver,有什么用?
用于接收
Broadcast
广播通知信息
(Intent)
(
时区改变、电池电量低、拍摄了一张照片或者用户改变了语言选项等等,除了系统产生的也可以是其他应用发出的
),并做出对应处理的组件,也
没有界面。
如何使用?
先继承
BroadcastReceiver基类写出一个具体的
BroadcastReceiver类,然后注册到系统中。
如何注册注册广播,
有两种
注册方法
:
1、在应用程序的代码中注册(非常驻型广播,生命周期跟随注册它的对象)
注册BroadcastReceiver:
registerReceiver(receiver, filter);
取消注册:
unregisterReceiver(receiver)
2、在androidMainfest.xml中注册(常
驻型广播,即使注册它的
应用程序关闭,如果对应广播信息,也会被系统调用运行
)
注册了一个接受开机启动广播的BroadcastReceiver
广播接收器生命周期(Broadcast receiver lifecycle)
BroadcastReceiver
只有一个回调方法:
void onReceive(Context curContext, Intent broadcastMsg)
当
接收到
广播消息抵达时,Android系统调用它的onReceive() 方法并将包含消息的Intent对象传递给它。
BroadcastReceiver
此时处于活跃状态,当onReceive()返回后,它即为失活状态。