《Android移动应用基础教程》(Android Studio)(第二版)黑马教程 课后题答案 第8章

一、填空题

  1. BroadcastReceiver

  2. 无序广播和有序广播 动态注册和静态注册

二、判断题

1、对 2、对 3、错 4、对 5、错

三、选择题

  1. BC
  2. C

四、简答题

  1. 广播机制的实现过程

答:Android中的广播使用了观察者模式,即基于消息的发布/订阅事件的模式。广播发送者和接收者分别处于观察者模式中的消息发布和订阅两端。广播机制的实现过程具体如下:

(1)广播接收者通过Binder机制在AMS(Activity Manager Service)中进行注册。

(2) 广播发送者通过Binder机制向AMS发送广播。

(3) AMS查找符合相应条件(IntentFilter/Permission)的广播接收者,将广播发送到相应的消息循环队列中。

(4)执行消息循环时获取到发送的广播,然后回调广播接收者中的onReceive()方法并在该方法中进行相关处理。

  1. 简述有序广播和无序广播的区别

答:广播分为有序广播和无序广播,他们有以下几点的区别。

(1) 发送广播时,使用的方法不同。有序广播使用sendOrderedBroadcast()发送广播,而无序广播使用sendBroadcast()方法发送广播。

(2) 广播接收者执行的顺序

a)
有序广播的接收者是顺序执行的。

有序广播按照广播接收者声明的优先级别被依次接收。当在高级别的广播接收者逻辑执行完毕之后,广播才会继续传递。当优先级相同时,先注册的广播接受者优先执行。

b)
无序广播是完全异步执行的。

当发送无序广播时,所有监听这个广播的广播接收者都会接收到此广播消息,但接收和执行的顺序不确定。

(2)拦截广播

有序广播的接收者可拦截广播。如果优先级较高的广播接收者将广播终止,那么广播将不再向后传递。而无序广播则不能被拦截。

(3)效率

有序广播的效率比无序广播低。

更多相关文章

  1. Android学习札记52:广播(Broadcast)基础篇
  2. Android(安卓)的广播机制和两种注册方式
  3. android 广播接受者
  4. android面试1
  5. android 广播机制
  6. Android短信的发送和广播接收者实现短信的监听
  7. Android20_广播机制(一)
  8. Android(安卓)Broadcast receiver 编程
  9. 修改不启动Launcher导致开机广播无法发出的bug

随机推荐

  1. Get the meta-data value in Android(安
  2. Android(安卓)SQLite使用
  3. Android(安卓)数据传递-通过静态变量传递
  4. Android(安卓)进阶 APP优化 布局优化
  5. Android(安卓)ApiDemos示例解析(52):Grap
  6. Android(安卓)log analysis
  7. android 开发高仿QQ表情选择、输入框
  8. android Button实现点击事件的三种方法
  9. 制作android ramdisk.img镜像
  10. Android(安卓)使用Gson解析json案例具体