大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
一、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);