Android第一行代码 第二版学习笔记--广播

广播类型

标准广播

  • 完全异步执行
  • 所有广播接收器几乎同一时刻接收到广播消息
  • 所有广播接收器接收的消息无先后顺序
  • 效率较高
  • 无法被截断

有序广播

  • 同步执行的广播
  • 同一时刻只有一个广播接收器能够收到这个广播
  • 只有当前一个广播接收器中的逻辑执行完毕后,广播才会继续传递,广播接收器彼此之前有先后顺序
  • 优先级高的广播接收器可以截断后面的广播

注册广播

动态注册

  • 在代码中注册
  • 注册接收器处理逻辑,新建一个类,继承自BroadcastReceiver,并重写父类的onReceive()方法
class NetworkChangeReceiver extends BroadcastReceiver {
    @override
    public void onReceive(Context context, Intent intent) {
    }
}
  • 创建监听对象
IntentFilter = new IntentFilter();
intentFilter.addaction("");
networkChangeReceiver = new NetworkChangeReceiver();
registerReceiver(networkChangeReceiver, intentFilter);
  • 取消注册广播接收器
unregisterReceiver(networkChangeReceiver)

静态注册

在AndroidMainfest.xml中注册

问题

  • intentfilter中的addaction可以添加多个action吗?

你可能感兴趣的:(学习笔记)