Brodcast receiver面试详解

广播定义(是什么)

  • 在Android中,广播是一种广泛运用在应用程序间进行传输信息的机制,Android中我们在要发送的内容是Intent,这个Intent中可以携带我们要传输的数据。
  • 从实现原理看上,Android中的广播使用了观察者模式,基于消息的发布/订阅事件模型。
  • Android广播绕不开的两角色
    • 广播发送者
    • 广播接受者
  • 广播的种类
    • 按是否具有系统全局性来分
      • Normal Broadcasts (标准广播)

        • 标准广播是一种完全异步执行的广播,在广播发出之后,所有的广播接收器几乎都会在同一时刻接收到这条广播消息,因此广播接收器之间是无序的效率会比较高无法被截断
      • Ordered broadcasts(有序广播) 【System Broadcast(系统广播)属于有序广播】

        • 是一种同步执行的广播,在广播发出之后,同一时刻只会有一个广播接收器接收这条广播消息,当这个广播接收器中的逻辑处理完之后,广播才会继续传递。广播接收器之间是有序的,高优先级的接收器先接收到广播消息,并且前面的广播接收器可以截断广播,使后面的广播接收器无法接收到广播消息
          顺序广播.png

广播的使用场景(能干什么)

  1. 同一app下多个进程的不同组件之间的消息通信。
  2. 不同app之间的组件间的消息通信。
  3. 解耦Servce与Activity间消息通信。(在两者之间充当桥梁)

你可能感兴趣的:(Brodcast receiver面试详解)