温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

【学习笔记】BroadcastReceiver的运用

发布时间:2020-07-16 10:02:30 来源:网络 阅读:437 作者:wx57a1620925627 栏目:软件技术

一、Activity与BroadcastReceiver通信

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

【学习笔记】BroadcastReceiver的运用

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

【学习笔记】BroadcastReceiver的运用

二、BroadcastReceiver注册和注销

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

【学习笔记】BroadcastReceiver的运用

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

【学习笔记】BroadcastReceiver的运用

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

【学习笔记】BroadcastReceiver的运用


三、BroadcastReceiver优先级

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

【学习笔记】BroadcastReceiver的运用

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

sendOrderedBroadcast(i,null);

【学习笔记】BroadcastReceiver的运用



向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI