BroadcastReceiver之有序广播
有序广播可以按一定的优先级进行传播
首先进行发送广播
public void click(View v){
Intent intent = new Intent();
intent.setAction("com.coderwei.orderbroadcast");
sendOrderedBroadcast(intent,null,new FinalReceiver(),null,1,"我是一条有序广播",null);
}
上面new FinalReceiver继承于与BroadcastReceiver,但是不用再清单文件中配置,有特权,可以用于接收最后的结果
public class FirstBroadcast extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String content = getResultData();
Toast.makeText(context,"First"+content,Toast.LENGTH_SHORT).show();
setResultData("我是一条已经被接收过一次了的有序广播");
}
}
public class SecondBroadcast extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String content = getResultData();
//abortBroadcast();//停止广播
Toast.makeText(context,"Second"+content,Toast.LENGTH_SHORT).show();
setResultData("我是一条被接收过两次的广播");
}
}
public class ThirdBroadcast extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String content = getResultData();
Toast.makeText(context,"Third"+content,Toast.LENGTH_SHORT).show();
}
}
然后就是配置Manifest.xml
<receiver android:name=".FirstBroadcast">
<intent-filter
android:priority="1000">
<action android:name="com.coderwei.orderbroadcast"/>
</intent-filter>
</receiver>
<receiver android:name=".SecondBroadcast">
<intent-filter
android:priority="800">
<action android:name="com.coderwei.orderbroadcast"/>
</intent-filter>
</receiver>
<receiver android:name=".ThirdBroadcast">
<intent-filter
android:priority="200">
<action android:name="com.coderwei.orderbroadcast"/>
</intent-filter>
</receiver>
android:priority 代表优先级,-1000 到 1000之间,数值越大,优先级越大。
BroadcastReceiver之有序广播的更多相关文章
- Android学习笔记(十二)BroadcastReceiver的有序广播和优先级
前两篇博文中简单整理了普通广播,其实还有有序广播,有序广播在开发中也是比不可少的,可以给广播接收者设定优先级来控制接受顺序,并却可以中断广播传递等等. 一.两种Broadcast: · 普通广播(No ...
- Android(java)学习笔记179:BroadcastReceiver之 有序广播和无序广播(BroadcastReceiver优先级)
之前我们在Android(java)学习笔记178中自定义的广播是无序广播,下面我们要了解一下有序广播: 1. 我们首先了解一下有序广播和无序广播区别和联系? (1) 有序广播> 接受者 ...
- Android(java)学习笔记122:BroadcastReceiver之 有序广播和无序广播(BroadcastReceiver优先级)
之前我们在Android(java)学习笔记178中自定义的广播是无序广播,下面我们要了解一下有序广播: 1. 我们首先了解一下有序广播和无序广播区别和联系? (1)有序广播> 接受者有优先级, ...
- Android BroadcastReceiver 发送有序广播
普通广播(Normal Broadcast): 一,优缺点:和有序广播的优缺点相反! 二,发送广播的方法:sendBroadcast() 有序广播(Ordered Broadcast): 一,优缺点 ...
- Android BroadcastReceiver实例Demo(有序广播的发送)
上一篇简介了广播的发送,这篇主要介绍下,有序广播的发送. 设置完相关属性的时候,广播就会依照有序的方式进行发送: 发送顺序: 先发送第二条广播: 再发送第一条广播: 最后发送第三条广播. 代码例如以下 ...
- 发送有序广播Ordered Broadcast
import android.os.Bundle;import android.app.Activity;import android.content.Intent;import android.vi ...
- android86 监听SD卡状态,勒索软件,监听应用的安装、卸载、更新,无序广播有序广播
* 添加权限 <uses-permission android:name="android.permission.RECEIVE_SMS"/> * 4.0以后广播接收者 ...
- android 51 有序广播
无序广播:一条广播发送出去,多个接收者接收没有顺序.有序广播:广播接收者可以设置优先级,优先级高的先收到广播.有序广播可以设置优先级. mainActivity.java package com.sx ...
- 17_Android中Broadcast详解(有序广播,无序广播)最终广播,Bundle传递参数,传递参数的时候指定权限
1 Broadcast是Android中的四大组件之一,他的用途很大,比如系统的一些广播:电量低.开机.锁屏等一些操作都会发送一个广播. 2 广播被分为两种不同的类型:"普通广播( ...
随机推荐
- Android Native 程序逆向入门(一)—— Native 程序的启动流程
八月的太阳晒得黄黄的,谁说这世界不是黄金?小雀儿在树荫里打盹,孩子们在草地里打滚.八月的太阳晒得黄黄的,谁说这世界不是黄金?金黄的树林,金黄的草地,小雀们合奏着欢畅的清音:金黄的茅舍,金黄的麦屯,金黄 ...
- Linux vi 操作命令整理
转自:http://www.lupaworld.com/?uid-296380-action-viewspace-itemid-118973 vi/vim 基本使用方法 本文介绍了vi (vim) ...
- Android adb push 和 pull操作
由于安卓真机本地调试时,每次启动并生成apk然后安装到设备比较费时,而很多情况是仅仅修改了hot 脚本文件(cocos2dx + lua). 所以,使用热更机制把修改后的lua文件push到热更目录( ...
- css3 background
background是一个很重要的css属性,在css3中新增了很多内容.一方面是原有属性新增了属性值,另一方面就是新增了3个属性. 一.css3中新增属性值介绍 css2的background有5个 ...
- 05章 OGNL
一.OGNL全称是Object Graph Navigation Language,即对象导航图语言 OGNL在框架中主要做两件事情:表达式语言和类型转换器 OGNL在框架中的作用以及数据的流入流出: ...
- Unity3D中的预制件(Prefab)的创建和使用说明!!!
首先我说明一下什么预制件? 在U3D里面我们叫它Prefab:我们可以这样理解:当制作好了游戏组件(场景中的任意一个gameobject),我们希望将它制作成一个组件模版,用于批量的套用工作,例如说场 ...
- oracl中的集合操作符
1:union(并集) union连接两条sql语句,并且去除两条sql语句重复的记录 2.union all(并集) 接两句sql语句,两句sql语句的和不用去掉重复的记录. 3:inter ...
- 原创:Eclipse 上网代理设置(亲测有效)
直接上图:
- 备战NOIP每周写题记录(一)···不间断更新
※Recorded By ksq2013 //其实这段时间写的题远远大于这篇博文中的内容,只不过那些数以百记的基础题目实在没必要写在blog上; ※week one 2016.7.18 Monday ...
- Anyconnect的VPN环境部署(2)-在Linux客户机上连接Anyconnect
由于之前已经在机房IDC安装了Anyconnect的VPN服务环境(参考:Anyconnect的VPN环境部署(1)-OpenConnect server(ocserv)服务安装)今天介绍下在linu ...