布局代码
<?xml version="1.0" encoding="utf-8"?>            

代码如下:

public class MyReceiver01 extends BroadcastReceiver {      public MyReceiver01() {      }        @Override      public void onReceive(Context context, Intent intent) {          Log.i("MyReceiver01","自定义广播接收者1,接收到了广播");      }  }  


广播 01 ,02,03与上类同设置优先级代码如下

                                                                                                                                                                                                            


修改广播3代码:
public class MyReceiver03 extends BroadcastReceiver {      public MyReceiver03() {      }        @Override      public void onReceive(Context context, Intent intent) {          Log.i("MyReceiver03","自定义广播接收者3,接收到了广播");          abortBroadcast();          Log.i("MyReceiver03","自定义广播接收者3,终结广播");      }  } 

修改优先级代码

                                                                                                                                                                                             
实验结果图:

Android之有序广播_第1张图片

Android之有序广播_第2张图片

Android之有序广播_第3张图片


有序广播,即从优先级别最高的广播接收器开始接收,接收完了如果没有丢弃,就下传给下一个次高优先级别的广播接收器进行处理,依次类推,直到最后。如果多个应用程序设置的优先级别相同,则谁先注册的广播,谁就可以优先接收到广播。这里接收短信的广播是有序广播,因此可以设置你自己的广播接收器的级别高于系统原来的级别,就可以拦截短信,并且不存收件箱,也不会有来信提示音。里面的android:priority="100"就是设定广播接收器的级别,这个值从1000~-1000,数值越大,优先级别就越高。
实现方法是:

   
                     
   


更多相关文章

  1. 安卓开发10:常用控件-常用表单级别控件
  2. Android 的权限级别小记
  3. Android 进程级别 和 oom_adj对应关系
  4. Android应用程序注册广播接收器(registerReceiver)的过程分析
  5. Android 各 api 级别与ndk 原生 api对照表
  6. Android——Broadcast Receiver(广播接收者)

随机推荐

  1. 带有Bootstrap 4的导航栏中的悬停问题
  2. Moment.js:Date.now()javaScript analogue
  3. 没有'Access-Control-Allow-Origin'反应
  4. 特拉维斯CI Jest Preset反应原生未找到
  5. three.js学习笔记 obj模型加载问题
  6. JavaScript中链式调用之研习
  7. ThoughtWorks西邮暑期特训营 -- JavaScri
  8. 在javascript中从json获取值
  9. 如何动态获取值?
  10. 执行javascript作为coldfusion页面加载