BroadcastReceiver

顾名思义,BroadcastReceiver是广播的意思,是一种可以接受系统各应用程序发出来的广播,进而尽行相应的接收操作的一种全局监听器
调用BroadcastReceiver的步骤是:
1、自定义广播,在主清单文件中进行相应的配置
2、通过意图启动广播
3、自定义广播类继承BroadcastReceiver,并且复写onReceiver()方法
广播和Activity的区别:在使用意图寻找广播中,如果广播没有被找到,程序不会异常终止,而如果是Activity,程序将会异常终止。
1、自定义广播

 <receiver android:name=".MyBroadCast" >
   <intent-filter android:priority="100">
       <action android:name="my_receiver.My_Broad_Cast"/>
  </intent-filter>
  </receiver>

2、通过意图启动广播

Intent  intent=new Intent();
//指定启动哪个广播
intent.setAction("my_receiver.My_Broad_Cast");
intent.putExtra("name","yupeibiao");
//发送广播请求
sendBroadcast(intent);

3、实现BroadcastReceiver,复写onReceive方法

public class MyBroadCast extends BroadcastReceiver{
   public void onReceive(Context context,Intent intent)
   {
       String name=intent.getStringExtra("name");
       Toast.makeText(this,"广播开启:By"+name,0).show();
   }
}

这样就形成一个完整的广播的定义,广播的复写,广播的接收的设置。
广播也是有优先级的,我们可以在主清单中配置设定
只需要增加一个优先级的设定即可

//在过滤器中增加优先级,priority越高,优先级越高
 <intent-filter android:priority="100">

优先级的作用
广播分为两种,一种是**有序广播**sendOrderBroadcast,一种是无序广播,普通的广播都是无序广播,也就是只要是符合的都可以收到信息,但是如果是有序广播的话,会按照广播的优先级,进行发送,优先级高的可以通过abortBroadcast进行拦截,拦截之后广播不会继续向低一级的传播

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值