Android基础之BroadCastReceiver

广播分类:一般广播(Normal BroadCast),有序广播(ordered BroadCast),本地广播(Local BroadCast)

1,一般广播使用 sendBroadCast(intent)发送
有序广播使用 sendOrderedBroadCast(intent)发送
本地广播本质上也是个一般广播,只是使用了一个LocalBroadCastManager来封装管理,即:
通过LocalBroadCastManager.sendBroadCast()发生广播
通过LocalBroadCastManager.registerReceiver()注册广播接收器
通过LocalBroadCastManager.unregisterReceiver()取消注册广播接收器

2,有序广播可以设置接收的优先级,如设置IntentFilter.priority=100。
有序广播收到广播后可以调用abordBroadCast()方法阻断广播的继续发送。

3,本地广播通常用于在当前应用中使用(发送和接收),用于保护数据安全。

广播接收器的注册(BroadCastReceiver, IntentFileter): 静态注册,动态注册

1,广播接收器中(onReceive()方法)一般不做耗时操作,只做中间跳转作用,比如启动sercice或Actvity
2,监听某些系统特殊的广播时需要声明对应的权限,比如开机广播。
3,Receiver不是一个Context的子类。

你可能感兴趣的:(android基础)