读书笔记--BroadcastReceiver
2016-01-31 11:32
281 查看
BroadcastReceiver用于接收程序(自行开发的和系统内建的)所发出的Broadcast Intent
发送时,创建Intent,然后调用Context的sendBroadcast或sendOrderedBroadcast方法来启动指定的BroadcastReceiver
接收时,可以在代码中通过registerReceiver来指定IntentFilter,也可以在manifest中配置<intent-filter/...>
BroastCast事件发生后,系统会创建对应的BroadcastReceiver实例,并触发onReceive方法,方法执行完后,实例被销毁
注意BroadcastReceiver的onReceive方法必须在10秒内执行完成,否则系统会认为该程序无响应,所以不要执行耗时操作,耗时操作请使用Service
Ordered Broadcast发出后,系统会按接收者声明的优先级,依次调用接收者
优先收到的接收者可以调用abortBroadcast终止该Broadcast
也可以通过setResultExtras( Bundle )方法将处理结果存入Broadcast,传递给下一个接收者(通过Bundle的getResultExtras获取数据)
通过接收系统广播,可以在特定时刻执行操作
发送时,创建Intent,然后调用Context的sendBroadcast或sendOrderedBroadcast方法来启动指定的BroadcastReceiver
接收时,可以在代码中通过registerReceiver来指定IntentFilter,也可以在manifest中配置<intent-filter/...>
BroastCast事件发生后,系统会创建对应的BroadcastReceiver实例,并触发onReceive方法,方法执行完后,实例被销毁
注意BroadcastReceiver的onReceive方法必须在10秒内执行完成,否则系统会认为该程序无响应,所以不要执行耗时操作,耗时操作请使用Service
Ordered Broadcast发出后,系统会按接收者声明的优先级,依次调用接收者
优先收到的接收者可以调用abortBroadcast终止该Broadcast
也可以通过setResultExtras( Bundle )方法将处理结果存入Broadcast,传递给下一个接收者(通过Bundle的getResultExtras获取数据)
通过接收系统广播,可以在特定时刻执行操作
相关文章推荐
- Sumsets(POJ 2229 DP)
- BestCoder Round #70(A)数学
- Poj 2406 Power Strings
- Mod in math
- 数组中重复的数字
- hdoj1443Joseph【约瑟夫环 打表】
- Android之自定义dialog对话框
- 关键字 private
- 如何面试前端工程师:Github很重要
- CentOS 7 WIFI显示Hardware Disabled
- 线性表的链式表示和实现
- 从ICassFactory为CLSID为{17BCA6E8-A950-497E-B2F9-AF6AA475916F}的COM组件创建实例失败问题解决方法
- POJ 2823 Sliding Window
- python安装第三方库
- 【freeradius2.x】 安装和学习
- 【freeradius2.x】 安装和学习
- 创建Metasploit Payloads
- c#中取整,向上取,向下取
- linux 时间戳转换/dmesg 时间转换
- javascript变量类型