码迷,mamicode.com
首页 > 其他好文 > 详细

【学习笔记】BroadcastReceiver的运用

时间:2016-10-27 02:20:08      阅读:233      评论:0      收藏:0      [点我收藏+]

标签:broadcastreceive

一、Activity与BroadcastReceiver通信

1)新建一个BroadcastReceiver,在MainActivity里通过sendBroadcast方法发送数据

技术分享

2)在MyReceiver类中重写onReceive方法,用参数intent接收数据

技术分享

二、BroadcastReceiver注册和注销

1)先在MyReceiver类中定义一个ACTION常量

技术分享

2)在MainActivity中创建Intent实例,此时就不能用显示的方法创建了,要用隐示的方法通过ACTION的值来实例化

技术分享

3)在MainActivity中定义一个MyReceiver的对象,初始化为null。在用registerReceiver方法时要确保MyReceiver的对象为空,在用unregisterReceiver方法时确保MyReceiver对象不为空

技术分享


三、BroadcastReceiver优先级

当有多个广播接收器的时候,他们的ACTION一致,想设置谁先收到就可以在AndroidManifest.xml文件中的intent-filter中添加priority,数字高的先接收

技术分享

当优先级高的接收到了想阻止后面的广播接收器接收的话,就需要在相应的接收器里用abortBroadcast方法停止广播,但阻止的话在MainActivity里发送广播的方法就不能用sendBroadcast了,不然会出现异常,要用sendOrderedBroadcast方法

sendOrderedBroadcast(i,null);

技术分享



【学习笔记】BroadcastReceiver的运用

标签:broadcastreceive

原文地址:http://11926720.blog.51cto.com/11916720/1865887

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!