Android(安卓)- Intent广播(broadcast)
Intent广播(broadcast)
本文地址:http://blog.csdn.net/caroline_wendy/article/details/21590339
Intent可以使用sendBroadcast(), 在应用组件之间广播事件;
使用BroadReceiver类监听和响应Broadcast Intent, 需要注册(register)和过滤器(intent-filter);
1. 创建Broadcast Intent
构建需要广播的Intent, 包含Intent标识字符串, 和数据(data, extras), 使用sendBroadcast()发送;
Intent标识字符串, 可以标识要广播的字符串, 应该是能够标志的唯一字符串,
public static final String [ACTION_STRING] = "[mzx].[clwang].action.[ACTION_STRING]";
Intent包含数据, 进行广播, 可以使用data属性指定一个URI, 可以在extras添加额外的基本值;
Intent intent = new Intent("[mzx].[clwang].action.[ACTION_STRING");
sendBroadcast(intent);
2. 接收Broadcast Intent
使用Broadcast Receiver来监听Broadcast Intent,在代码或manifest中注册, 使用Intent FIlter表明监听的Intent(标识符)和数据;
应用程序可以被Intent启动, 可以创建事件驱动的应用程序;
Broadcast Receiver, 继承BroadcastReceiver类, 重写onReceive事件, 进行处理, 必须在5秒之内完成;
代码注册:
注册BroadcastReceiver, 需要使用IntentFilter, 指明标识符; 使用BroadReceiver类, 指明接收器;
注册: registerReceiver(receiver, filter); 注销:unregisterReceiver(receiver);
Manifest注册:
<receiver android:name = ".[Receiver]">
<intent-filter>
<action android:name="[mzx].[clwang].action.[ACTION_STRING">
</intent-filter>
</receiver>
更多相关文章
- 分支和循环(二)(零基础学习C语言)
- java虚拟机理解
- SQLiteDatabase中的query方法,里面有个用占位符代替的参数,不错
- android quicksearchbox修改默认搜索引擎为百度
- Android(安卓)product="tablet" or "phone" 设置
- Android(安卓)json通信(解析)方法
- android各种资源的详细解释
- Android(安卓)Java(2015-6-18 15:28、2016-1-30 21:18、2016-5-31
- Android中文按拼音排序