broadcast receiver是用来监听intent的。

android大量使用了broadcast receiver,比如:开机、电话打进来、发送消息,手机电量过低

有两种方式注册broadcast receiver。

1、代码中注册

  

2、在manifest文件中进行注册

  使用这种方式注册的receiver始终处于活动状态,即使应用程序关闭了

还有一个sticky broadcast,他是broadcast的变体。这个broadcast会保存最后一次广播的值,当新注册的一个boradcast receiver时,

就可以直接获取到最后一次的值。

典型的应用场景:获取电池的变化。

假如现在我给手机充电,这个广播事件已经发出去了。现在我写个代码来注册词receiver,如果是正常的boradcast reveiver的话,由于广播已经发出去了,我们接受不到任何的信息,

但是用sticky broadcast的话,就可以获得最后一次的信息(电池现在处于充电的状态)

05-11 11:05