zoukankan      html  css  js  c++  java
  • 有序广播和无序广播

    * 无序广播:只要发出广播,感兴趣的接收者都可以接受这个广播

        sendBroadcast(intent); 发送无序广播

    * SD卡插拔、应用程序的卸载安装

    * 有序广播:系统发出广播,接收者按照优先级从高到低一级一级地接受,类似中央的红头文件

        sendOrderedBroadcast(intent, receiverPermission, resultReceiver, scheduler, initialCode, initialData, initialExtras)

    * intent :意图

    * receiverPermission :指定接收者的权限

    * resultReceiver :最终的广播接收者

    * scheduler :Handler

    * initialCode :广播编码

    * initialData :设置广播的数据,接收者getResultData()获取数据

    * initialExtras :把数据设置到bundle,数据量大的时候用

      如:sendOrderedBroadcast(intent, null, new FinalReceiver(), new Handler(), 1, "补助10000", null); 发送有序广播

      abortBroadcast(); 拦截终止广播

      setResultData("给每个码农补贴¥1000"); 修改广播数据

    * 接受者接受广播有先后顺序

    * 优先级 1000 ~ -1000 {优先级可以是int范围的最大值,优先级最高}

    * 高优先级的接收者可以拦截终止广播

    * 高优先级的接收者可以修改广播里的数据

    * 可以指定一个最终的广播接收者

    最终的广播接收者:

    public class FinalReceiver extends BroadcastReceiver{
    
          @Override
    
             public void onReceive(Context context, Intent intent) {
    
                System.out.println("最终接收者:"+getResultData());
    
             }
    
       }
    

     二种广播的区别之处:

      * 能不能终止广播

      * 能不能修改广播里的数据

  • 相关阅读:
    HashMap_经典存储_经典分拣思路
    (GOF23设计模式)_单例模式_应用场景_饿汉式_懒汉式
    sql简单测试
    Java概述
    搭建集群时的问题总结
    在Java连接hbase时出现的问题
    JavaAPI与hbase的交互
    Resourcemanager的高可用
    hbase安装
    hbase报错org.apache.hadoop.hbase.TableExistsException: hbase:namespace
  • 原文地址:https://www.cnblogs.com/loaderman/p/6416103.html
Copyright © 2011-2022 走看看