android广播接收者BroadcastReceiver

android广播:
每一个应用程序都可以对自己感兴趣的广播进行注册,这样就只能收到自己关心的广播,这些广播可能来自于系统,也可能来自其他应用程序(来短信回产生广播,wifi变化会产生广播...)
要接收广播就必须引入一个对象:广播接受者,它是专门负责接收android广播的。定义一个广播接收者,需要一个类继承自BroadcastReceiver类

public class myBroadcastReceiver  extends  BroadcastReceiver { @override  public void onReceive()}

在onReceive()中不能执行异步操作,不能执行耗时操作,同时它是被主线程执行的

广播接收者必须注册后才能正常使用(四大组件都要注册)

可以在AndroidManifest中注册,BroadcastReceiver和Activity都属于四大组件,因此Receiver标签和Activity是同一级别



动态注册:


静态和动态注册的区别:

静态:只要安装了APP广播接收者BroadcastReceiver就处于工作状态。

动态:需要APP运行起来广播接收者BroadcastReceiver才处于工作状态。


发送广播:

广播使用Intent来传递信息,因此自定义广播也需要将action增加到intent
Intent _intent=new Intent();
_intent.setAction(MY_ACTION)
Context类提供一个方法可以发送广播
sendBroadcast(_intent)


有序广播:

abortBroadcast() //表示丢弃广播,则后面的有序广播接收器接收不到此广播了。

priority//属性,Intent-filter的属性,表示优先级,值越大表示优先级越高。


无序广播:



本地广播:




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值