广播机制按照字面理解就是广于播之,在计算机网络中这个词比较常见,它的意思是说发
送端把信息发送出去,是以广播的方式发送出去,该信息可以同时被多个接收端介绍,当然接收
端也可以不接收,另外接收端介绍到这信息后怎么处理广播的发送端也是不用考虑的。因此广播
机制还是挺有用的,利用广播信息可以为触发的一些事件发送消息。Android 中的广播机制可
以参考 mars 老师的这张图片:
如图所示,有多个广播接收者在 android 中注册过,当一个事件产生后,它可以发送一个
广播信息,然后这些接收者来接收该信息。广播接收者的实现一般是写成一个类,该类继承
android 提供的类 BroadcastReceiver,并且我们需要复写该类的 onCreate 方法,因为我们需
要在该方法中实现接收到信息后的处理过程。
下面通过 2 个简单的例子来学会怎样在 andorid 中使用广播信息,其实在文章 Android 开
发历程_13(Service 的使用)中已经使用过广播机制,即在 servier 下发送广播信息,主 activity
中接收该信息来更新 UI。在那个程序中使用的是 intentFilter 这个类,然后在 activity 中使用
registerReceiver 函数来发送广播信息,这些代码的实现都是在 java 语句中实现。这是第一
种注册广播消息的方法,另外一种方法是在 AndroidMainifest.xml 文件中注册。下面 2 个例
子就分别介绍了这 2 中方法。
在介绍这 2 个例子之前,我们先来看看这 2 种注册方法的去别:
1. 在 Manifest.xml 文件中注册的话,因为需要一个 android:name 设置,所以我们继承
BroadcastReceiver 的类需要单独作为一个类文件出现,而在 java 代码中注册,我们可以使
用一个内部类就可以了。
- 1
- 2
前往页