广播一般情况下用来监听手机内部的状态的,也可有消息推送
广播有两种注册方式:
静态注册(常驻型广播):
特点:当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的值越大,则这个广播的优先级越高。
广播有两种注册方式:
静态注册(常驻型广播):
特点:当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的值越大,则这个广播的优先级越高。