首先看一下什么是 BroadcastReceiver
BroadcastReceiver:直译是“广播接收者”,所以它的作用是用来接收发送过来的广播的。
那我们有必要知道:什么是广播。广播,我的理解就是系统中消息的一种变种;就是当一个事件发生时,比如,系统突然断网,系统就发一个广播消息给所有的接收者,所有的接收者在得到这个消息之后,就知道,啊哦,现在没网络了,我的程序应该怎么办,比如显示默认图片、提示用户等。前面,我们说了,BroadcastReceiver就是一个广播消息接收者。
另外我还要提一下,广播之间信息的传递是通过Intent对象来传递的;在《详解Intent》系列文章中,我讲了,Intent调用分为显示调用的隐式调用两种,由于这里能通知到所有的接收者,所以肯定不能利用显示调用,只有利用隐式调用Intent对象了。(这里的隐式调用,并不是真正意义上的Intent隐式调用,因为Intent隐式调用,当出现很多匹配应用时,会以列表形式提示用户选择一个启动,而这里不同的地方在于,当有很多匹配项时,会给所有的匹配项都发一个消息,我说隐式调用,只是方便大家理解构造Intent的方法,即必须利用构造隐式Intent的方法来构造)
1,创建一个空项目,然后new一个新的BroadcastReceiver(new--->other)MyReceiver.java
1 public class MyReceiver extends BroadcastReceiver { 2 3 //用于隐式调用与注册 4 public static final String ACTION = "examples.ouc.com.broadcastreceiver.intent.action.MyReceiver"; 5 public MyReceiver() { 6 } 7 8 //监控广播操作是否完成 9 @Override 10 public void onReceive(Context context, Intent intent) { 11 12 //通过intent传递信息 13 System.out.println("Receive news, and the news is :" + intent.getStringExtra("data")); 14 } 15 }