广播接收器是一个专注于接收广播通知信息,并做出对应处理的组件。很多广播是源自于系统代码的──比如,通知时区改变、电池电量低、拍摄了一张照片或者用户改变了语言选项。应用程序也可以进行广播──例如,通知其他应用程序一些数据下载完成并处于可用状态。
应用程序可以拥有任意数量的广播接收器以对所有它感兴趣的通知信息予以响应。所有的接收器均来自BroadcastReceiver基类。
在Android系统中,广播是一种广泛运用的在应用程序之间传输信息的机制。而广播接收器是对发送出来的广播进行过滤接受并响应的一类组件。可以使用广播接收器来让应用对一个外部的事件做出响应。例如,当电话呼入这个外部事件到来的时候,可以利用广播接收器进行处理。例如,当下载一个程序成功完成的时候,仍然可以利用广播接收器进行处理。广播接收器不能生成UI,也就是说对于用户来说不是透明的,用户是看不到的。广播接收器通过NotificationManager来通知用户这些事情发生了。广播接收器既可以在AndroidManifest.xml中注册,也可以在运行时的代码中使用Context.registerReceiver()进行注册。只要是注册了,当事件来临的时候,即使程序没有启动,系统也在需要的时候启动程序。各种应用还可以通过使用Context.sendBroadcast()将它们自己的Intent Broadcasts广播给其他应用程序。
广播接收器没有用户界面。然而,它们可以启动一个Activity来响应它们收到的信息,或者用NotificationManager来通知用户。通知可以用很多种方式来吸引用户的注意力──闪动背灯、震动、播放声音等。一般来说,可在状态栏上放一个持久的图标,用户打开它便可获取消息。