Broadcast Receiver广播

广播一般情况下用来监听手机内部的状态的,也可有消息推送
广播有两种注册方式:
静态注册(常驻型广播):

特点:当App运行的时候,广播就应经存在了,即使是退出应用,广播依然存在。

通过清单文件的方式注册的。

静态注册步骤:
1.自定义一个类,继承自BroadCastReceiver,实现onReceiver方法
2.在清单文件中添加<receiver>标签,<intent-filter>,<action>
3.在主类中通过隐式意图发送广播,sendBroadcast(intent)
4.在广播中接收intent的值
动态注册:
 特点:当你点击某个事件时,广播才会生成,并且App退出时,广播则死亡,在广播死亡之前,你要手动的注销广播,否则会报错。
通过代码的方式注册的。
动态注册步骤:
1.自定义类,继承自BroadCastReceiver,实现onReceiver方法
2.在自定义类中,添加一个静态常量Action
3.在主类中通过按钮实现注册。调用registerReceiver方法(你要实现的广播类,意图过滤器)
4.发送广播。sendBroadCast(intent)
5.在onDestroy方法中,销毁广播unregisterReceiver,记住要加判断,如果不为空则销毁。
广播分两种:
普通广播 : 

特点:当有多个广播存在时,接收消息的时候,没有固定顺序,如果为静态注册,则通过清单文件的方式一次向下接收
普通广播,如果为静态注册,则根据在清单文件中的位置依次从上至下加载。如果为动态注册,则会根据代码的加载顺序进行发送。
有序广播:
特点:他是根据一个属性值,整形的,数值越大,优先级越高,数值越小,优先级越小
有序广播,是通过priority来区别的,跟你的清单文件的顺序没有任何关系,并且发送广播的时候不是通过sendBroadCast发送的,而是通过sendOrderedBroadcast发送的,priority的值越大,则这个广播的优先级越高。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值