Android -- 发送Broadcast、有序无序
普通广播
- 优缺点:和有序广播的优缺点相反!
- 发送广播的方法:sendBroadcast()
有序广播
- 优缺点
优点:1,按优先级的不同,优先Receiver可对数据进行处理,并传给下一个Receiver
2,通过abortBroadcast可终止广播的传播
缺点:效率低
- 发送广播的方法:sendOrderedBroadcast()
- 优先接收到Broadcast的Receiver可通过setResultExtras(Bundle)方法将处理结果存入Broadcast中,下一个Receiver 通过 Bundle bundle=getResultExtras(true)方法获取上一个 Receiver传来的数据。
工程
MainActivity.java是程序住进口。
MyBroadcastReceiver.java等都是广播接收者,只是等级不一样。
FinalRecevier.java是有序广播的时候,即使广播被拦截了,这个还是可以接收到广播的。
<receiver android:name=".MyBroadcastReceiver"><intent-filter android:priority="1000"><action android:name="com.yydcdut.nima"/></intent-filter></receiver><receiver android:name=".MyBroadcastReceiver2"><intent-filter android:priority="100"><action android:name="com.yydcdut.nima"/></intent-filter></receiver><receiver android:name=".MyBroadcastReceiver3"><intent-filter android:priority="10"><action android:name="com.yydcdut.nima"/></intent-filter></receiver><receiver android:name=".FinalRecevier"><intent-filter><action android:name="com.yydcdut.nima"/></intent-filter></receiver>
在MyBroadcastReceiver.java中,代码都差不多:
public class MyBroadcastReceiver extends BroadcastReceiver {@Overridepublic void onReceive(Context context, Intent intent) {System.out.println("MyBroadcastReceiver1111111接受到的广播");Toast.makeText(context, "MyBroadcastReceiver", Toast.LENGTH_SHORT).show();}}
在MainActivity.java中:
public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}public void click(View view){Intent intent = new Intent();intent.setAction("com.yydcdut.nima");//无序广播 sendBroadcast(intent);//有序广播//sendOrderedBroadcast(intent, null);//sendOrderedBroadcast(intent, null, new FinalRecevier(), null, 0, null, null); } }
在某个广播接收的类中加入
abortBroadcast();
这是去拦截广播,但是FinalRecevier还是接收到了的,无论怎么拦截广播。
我是天王盖地虎的分割线
源代码:http://pan.baidu.com/s/1dD1Qx01
广播发送.zip
转载请注明出处:http://www.cnblogs.com/yydcdut
转载于:https://www.cnblogs.com/yydcdut/p/3803666.html
Android -- 发送Broadcast、有序无序相关推荐
- android adb开启服务,android adb 启动activity、service,发送broadcast等操作
android adb 启动activity.service,发送broadcast等操作 图片发自简书App 一.adb启动activity: adb shellam start -n {包(pac ...
- adb命令启动activity、service,发送broadcast
一.adb启动activity: $ adb shell $ am start -n {包(package)名}/{包名}.{活动(activity)名称} 如:启动浏览器 # am start -n ...
- Android 用 broadcast receiver组件实现音乐盒
Android 用 broadcast receiver详解用例 Android 用 broadcast receiver详解用例 一.BroadcastReceiver概述 1.BroadcastR ...
- Android 广播(Broadcast)
Android 广播Broadcast 1.小声嘀咕 2.广播机制简介 3.接收系统广播 3.1动态注册 3.2静态注册 4.发送自定义广播 4.1标准广播 4.2有序广播 5.使用本地广播 1.小声 ...
- android编程怎么发送,Android 发送短信程序
搜索热词 下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. mButton1.setOnClickListener(new Button.O ...
- android adb broadcast,adb shell am broadcast -a -d
$adb shell am broadcast -a android.intent.action.MEDIA_MOUNTED -d file:///mnt/sdcard/ 作用: adb shell ...
- android发送短信
使用android发送短信,需要先进行添加发送,读取短信新的权限: <uses-permissionandroid:name="android.permission.RECEIVE_S ...
- js 解析php arraylist,使用JSON将ArrayList从Android发送到PHP脚本
什么是场景 我想从Android向服务器发送多个ArrayList(通常为5个),并将其插入到mysql数据库中. 我成功完成的工作 我已使用JSON成功将Android中的单个值和多个值发送到PHP ...
- c语言中要让音乐暂停还用什么指令,【Android】Broadcast控制音乐暂停继续等
内容简介 [Android]Broadcast控制音乐暂停继续等 [Android]Broadcast控制音乐暂停继续等 最近工作中,遇到一个小问题.后来解决了,记录一下. Android中,可以用I ...
最新文章
- 2018-3-6 (论文—网络评论中非结构信息应用于研究)笔记-----论文中的特征抽取的模型算法
- ECCV2020图像分割开源论文合集
- 【电子书】C++编程开发30问
- [家里蹲大学数学杂志]第418期南开大学2013年实变函数期末考试试题参考解答
- POJ 2186 挑战 --牛红人 强连通分量——Tarjan
- php开启端口复用,请问下workman是否支持端口复用?
- MySQL进阶篇(03):合理的使用索引结构和查询
- MyBatis 源码自我解读
- C++ Primer 学习笔记_98_特殊的工具和技术 --优化内存分配
- 简易记事本android代码,Android实现简易记事本
- 点点点工程师自我提升运维方向----shell编程基础知识盘点
- 突发!图森未来CEO侯晓迪被罢免,公司市值一夜砍半!自动驾驶未来如何?
- 计算机教师所需技能,信息技术教师应具备哪些教学技能
- uni-app app-plus
- 淘宝【高佣卷】、【精品券】、【详情图片】
- mysql 自己的ip怎么查看_如何查看连接mysql的ip地址
- syswow64删除文件_syswow64 c盘syswow64可以删除吗
- Surface电池阈值
- 一文解决安装Anaconda后C盘不断增加的问题、修改默认配置
- 【U3D入门小白教程——案例篇】之一:球吃豆
热门文章
- 任何傅里叶级数展开和卷积可以参考一下页面
- FPGA/CPLD状态机稳定性研究
- 3.15 排列对称串
- Python函数积累
- 解决Mac10.13 Pod报错 -bash: /usr/local/bin/pod: /System/Library/Frameworks/Ruby.fram
- 《Excel 职场手册:260招菜鸟变达人》一第 13 招 利用数据验证给单元格添加注释,不用批注...
- CentOS 6.5 Zabbix-agent3.2 安装 1.0版
- linux下mono的安装与卸载
- 机房收费系统的合作版
- JNDI的XML相关配置(context.xml和web.xml)