android-BroadCast

广播 是一种广泛运用的应用程序传输信息的机制
BroadcastReceiver  ---> 广播接收者(接收广播的类)
  
   发送:
     1.信息装入Intent对象(如Action,Category)。
     2.通过调用相应的方法将Intent对象以广播的方式发送出去。
      .sendBroadcast()
      .sendOrderBroadcast()
      .sendStickyBroadcast()
 
   接收:
    当上述的Intent被发送之后, 所有已经注册过BroadcastReceiver会检查注册
    时IntentFilter是否与发送的Intent相匹配, 若匹配说明你有资格接收,就会调用Broadcast Receiver的onRec eive()方法。一定要注册!

  注意生命周期非常短 !BroadcastReceiver 里面不做耗时操作,别开子线程。

  广播的种类
    普通广播   
          1.同级别接收先后是随机的
          2.级别低的后收到广播
          3.接收器不能截断广播的继续传播,也不能处理广播
          4.同级别动态注册高于静态注册
       动态注册
        在onCreate() 中建立一个过滤器,
        IntentFilter intentFiler = new IntentFilter("action_name");
        registerReceiver(广播类,  intentfilter);
        缺点:程序必须运行起来才能够注册.
    有序广播
          1.同级别接收的顺序是随机的。
          2.能截断广播的继续传播
          3.接收器能截断广播的继续传播,也能处理广播
        当你在onReceive中接收到intent后你可以对其进行修改然后发出去。       
          4.同级别动态注册高于静态注册
    异步广播

例子 广播接收者要实现 BroadcastReceiver 类 实现onReceive()方法。
         注册监听器, 在intent-fliter 中设置优先级。

posted @ 2015-06-17 14:08  计划了好了再娶吧  阅读(143)  评论(0编辑  收藏  举报