目录

BriadCast Receiver(广播接收者)

BriadCastReceiver是什么?

重点:Android中出现的第一个错误

广播接收者一共有两种,分别是:标准广播和有序广播

标准广播:是一种完全异步执行的广播,在广播发出之后,所有的广播接收器几乎都会在同一时刻接收到这条广播消息,因此他们之间没有先后顺序。效率比较高,但是不能被截断。


BriadCast Receiver(广播接收者)

BriadCastReceiver是什么?

BriadCastReceiver是Android四大组件之一,必须在清单文件(androidManifest.xml)文件中进行注册

是组件之间传播数据(intent)的一种机制

APP哪些地方用到了广播

电话

短信

电量

WIFI是否连接

消息弹窗

重点:Android中出现的第一个错误

在广播组件中进行耗时操作,就会报 :application no reponse(ANR)

广播接收者一共有两种,分别是:标准广播和有序广播

标准广播:是一种完全异步执行的广播,在广播发出之后,所有的广播接收器几乎都会在同一时刻接收到这条广播消息,因此他们之间没有先后顺序。效率比较高,但是不能被截断。

标准广播又分为静态注册和动态注册

    静态注册

创建广播接收器(可以使用快捷方式)

注册广播:静态注册需要在清单文件中注册由于是快捷方式创建的广播接收器,注册会自动完成。所有的静态广播都是在application标签内的receiver标签里注册的

<receiverandroid:name=".MyBroadReceiver"android:enabled="true"android:exported="true"><intent-filter>//添加需要监听的广播值<action android:name="com.example.broadcasttest.MY_BROADCAST" /></intent-filter></receiver>

发送信息给静态注册的广播接受者

动态注册

创建广播接收器,继承BroadcastReceiver,重写父类的onReceive()方法
                        创建IntentFilter的实例,添加值为想要监听的广播的action
                        创建广播接收器的实例,调用registerReceiver()方法进行注册
                        取消注册,动态注册的广播接收器需要取消注册
                        声明权限:在AndroidManifest.xml文件中加入权限

 myDynamicReceiver=new MyDynamicReceiver();//注册动态广播接收者IntentFilter intentFilter=new IntentFilter();intentFilter.addAction("shy");registerReceiver(myDynamicReceiver,intentFilter);class MyDynamicReceiver extends BroadcastReceiver{@Overridepublic void onReceive(Context context, Intent intent) {Log.i("动态广播接收者", "onReceive: "+intent.getStringExtra("shy"));}}

为防止内存泄漏需要在onDestory中进行反注册

  @Overrideprotected void onDestroy() {super.onDestroy();unregisterReceiver(myDynamicReceiver);}

发送信息给动态注册的广播接受者

Android:BroadCast Receiver相关推荐

  1. Android Broadcast Receiver

    Android中的广播主要分为两种:标准广播和有序广播 标准广播:一种完全异步执行的广播,广播发出后,所有的广播接收器几乎都会在同一时刻接收到这条广播,他们之间没有任何先后顺序可言. 有序广播:是一种 ...

  2. android 组件(activity,service,content provider,broadcast receiver,intent)详解

    Android应用程序由若干个不同类型的组件组合而成,每一个组件具有其特定的安全保护设计方式,它们的安全直接影响到应用程序的安全.Android应用程序组件的主要类型有:活动(Activity),服务 ...

  3. 007 Android之Broadcast Receiver

    文章目录 广播的概念 广播的类型 广播接收实例 IP拨号器 开机自启动 监听应用安装和卸载 广播的概念 现实中的广播:电视台发送广播,使用收听机可以收听广播,得到广播信息 Android中的广播:系统 ...

  4. Android静态安全检测 - Broadcast Receiver组件暴露

    Broadcast Receiver组件暴露 - exported属性 一.android:exported 该属性用来标示,当前Broadcast Receiver是否可以从当前应用外部获取Rece ...

  5. Android 用 broadcast receiver组件实现音乐盒

    Android 用 broadcast receiver详解用例 Android 用 broadcast receiver详解用例 一.BroadcastReceiver概述 1.BroadcastR ...

  6. android 四大组件Broadcast Receiver

    本文介绍Broadcast Receiver,包括几部分内容:Broadcast Receiver概述及实例.自定义Broadcast Receiver.Broadcast Receiver的实现细节 ...

  7. [2021.07.12]Android系统广播机制(Broadcast Receiver)

    广播(Broadcast)是一种在组件之间进行消息传递的方式.这些组件可以运行在同一个进程中,也可以在不同的进程中.事实上,广播机制就是在Binder进程间通信的基础上实现的.那么,有了Binder通 ...

  8. Broadcast Receiver @

    http://developer.android.com/reference/android/content/BroadcastReceiver.html 译文: http://www.2cto.co ...

  9. Android - Broadcast

    10s执行不完就ANR异常. 一.概念 Broadcast运行在主线程,使用了观察者模式,基于消息的发布/订阅事件模型,将发送者和接收者解耦使得方便集成更易扩展. 全局广播 APP ↔ 系统 像电量低 ...

最新文章

  1. 树模型集成学习(Tree Embedding)
  2. TCP滑动窗口 - 动画演示
  3. OpenCV中图像垂直拼接函数vconcat的使用
  4. for in for of区别_(for…in) VS (for…of)
  5. WPS长文档编辑技巧之二:对样式的设置与修改
  6. MFC Radio Button笔记
  7. 给 datepicker 设定日期格式
  8. 检查字段是否包含字符串
  9. iOS UIPageControl
  10. win7移动设备管理器_win7系统usb设备识别不了的解决方案
  11. 搜索题,留着以后慢慢刷
  12. 不虚此行!OpenStack 温哥华峰会参会分享值得收藏
  13. day14:磁盘管理df/du/fdisk/parted命令
  14. python股票交易模型_利用python建立股票量化交易系统(一)——小市值选股票模型...
  15. CentOS 7 安装Dukto(局域网通信工具)
  16. 计算机怎么算平均分公式,平均分怎么算
  17. 什么是java全栈工程师
  18. 怎么在html中复制粘贴图片,如何复制其他网页上的文章和图片
  19. 基于JAVAweb唐院寻人表白系统计算机毕业设计源码+数据库+lw文档+系统+部署
  20. 小白常用的Widows10实用功能,让你更好掌控你的电脑。

热门文章

  1. php时区设置为prc还是错误,关于php时区时间错误问题的解决,以及Unix时间戳转换工具...
  2. vmware虚拟机实现两台电脑远程桌面连接
  3. golang for嵌套循环中break 的注意事项和使用细节: break 语句出现在多层嵌套的语句块中时,可以通过标签指明要终止的是哪一层语句块
  4. String的普通方法
  5. 解决Mac OS 山猫10.8下Xcode无法更新以及速度慢的问题
  6. 【Linux】Centos安装mvn命令(maven)
  7. 基于stm32c8t6的两轮平衡小车 第二篇——原理图及CubeMx配置
  8. nbuoj 1103 计算等式
  9. S5PV210实验板发布
  10. 大数据基础之常用Linux命令