Broadcast Receiver



Android广播机制包括三个基本要素:广播(Broadcast) - 用于发送广播。广播接收器(BroadcastReceiver) - 用于接收广播;意图内容(Intent)-用于保存广播相关信息的媒介。Broadcast是一种广泛运用的在应用程序之间传输信息的机制。

而BroadcastReceiver是对发送出来的Broadcast进行过滤接受并响应的一类组件。

<p>

1、Android的广播机制介绍

                在 Android 里面有各种各样的广播,比方电池的使用状态,电话的接收和短信的接收都会产生一个广播,应用程序开发人员也能够监听这些广播并做出程序逻辑的处理。

2、BroadcastReceiver的作用

      BroadcastReceiver(广播接收器)是为了实现系统广播而提供的一种组件。而且广播事件处理机制是系统级别的。

3、BroadcastReceiver的编写方法

        继承BroadcastReceiver的类,重写了onReceiver方法。并在onReceiver方法中对广播进行处理。


4、BroadcastReveiver的生命周期
        一个BroadcastReceiver 对象仅仅有在被调用onReceive(Context, Intent)时才有效,当从该函数返回后。该对象就无效的了。结束生命周期。

二、注冊BroadcastReceiver的方法
        BroadcastReceiver用于监听被广播的事件(Intent)    
            为了达到这个目的,BroadcastReceiver必须进行注冊,注冊的方法有下面两种:

1、在应用程序的代码其中进行注冊
        注冊BroadcastReceiver:
            registerReceiver(receiver,filter);
            
        取消注冊BroadcastReceiver:
            unregisterReceiver(receiver);
            
        假设一个BroadcastReceiver用于更新UI,那么一般会使用这样的方法进行注冊,
        在Activty启动的时候进行注冊BroadcastReceiver。在Activity不可见以后取消注冊(onStop())。
 
2、在AndroidMainfest.xml其中进行注冊
        使用这种方式注冊的BroadcastReceiver,即使应用程序没有启动,或者被Kill掉以后。也始终会保持活动状态;

三、Android内置的Broadcast Actions
        在Android平台其中,内置了非常多Action。用于帮助开发人员监听手机上所发生的各种事件,下面是比較常见的Action。
能够在帮助文档中,Intent类,找到它的常量(以Acition开头(关键是Broadcast Action))
       



在BroadCast 中尽量不要处理太多逻辑问题。建议复杂的逻辑交给Activity 或者 Service 去处理


【Android 初学】13、Broadcast Receiver的更多相关文章

  1. android 四大组件Broadcast Receiver

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

  2. Android四大组件--Broadcast Receiver具体解释

    本文主要讲述了: 一.BroadcastReceiver概述: 二.BroadcastReceiver事件分类 三.BroadcastReceiver事件的编程流程 四.两类BroadcastRece ...

  3. Android四大组件-Broadcast Receiver

    http://www.jianshu.com/p/1013a366cc72 http://www.jianshu.com/p/ca3d87a4cdf3 前言 基础知识. 1.Android广播分为两个 ...

  4. Android源码——Broadcast Receiver

    Android源码分析——广播 广播是一种在组件之间进行消息传递的方式.广播机制的实现是基于Binder进程间通信. Binder进程间通信和广播的差别:Binder中,Client组件和Servic ...

  5. Android Broadcast Receiver 使用入门

    Broadcast Receiver 的使用        1.Broadcast Receiver简介        2.Broadcast Receiver接收系统自带的广播        3.自 ...

  6. android的Broadcast receiver

    broadcast receiver是用来监听intent的. android大量使用了broadcast receiver,比如:开机.电话打进来.发送消息,手机电量过低 有两种方式注册broadc ...

  7. Android Broadcast Receiver注册

    之前有关 Broadcast Receiver的链 动态注册 1.我们新建一个广播接受类,我们创建一个内部类让他继承BroadcastReceiver,并且重新其中当有广播来到时执行的方法onRece ...

  8. Android开发学习之路--Broadcast Receiver之初体验

    学习了Activity组件后,这里再学习下另一个组件Broadcast Receiver组件.这里学习下自定义的Broadcast Receiver.通过按键自己发送广播,然后自己接收广播.新建MyB ...

  9. Android笔记(五):广播接收者(Broadcast Receiver)

    Android有四大组件,分别为:Activity(活动).Service(服务).Content Provider(内容提供器).Broadcast Receiver(广播接收者). 引入广播的目的 ...

随机推荐

  1. 0x59 单调队列优化DP

    倍增DP太难啦心情好再回去做 poj1821 先让工匠按s排序,f[i][j]表示枚举到第i个工匠涂了j个木板(注意第j个木板不一定要涂) 那么f[i][j]可以直接继承f[i-1][j]和f[i][ ...

  2. Swift - 可编辑表格样例(可直接编辑单元格中内容、移动删除单元格)

    (本文代码已升级至Swift3)   本文演示如何制作一个可以编辑单元格内容的表格(UITableView). 1,效果图 (1)默认状态下,表格不可编辑,当点击单元格的时候会弹出提示框显示选中的内容 ...

  3. 摘要提取算法——本质上就是pagerank,选择rank最高的句子作为摘要,如果结合word2vec应该有非常好的效果

    最近需要做一些文本摘要的东西,选取了TextRank(论文参见<TextRank: Bringing Order into Texts>)作为对比方案,该方案可以很方便的使用Python相 ...

  4. springsecurity+jwt实践和学习

    1.参考资料: https://blog.csdn.net/qq924862077/article/details/83038031 https://blog.csdn.net/sxdtzhaoxin ...

  5. C# DataTable常用方法总结

    https://blog.csdn.net/wangzhen209/article/details/51743118

  6. 第一课 导入库 - 创建数据集 - CSV读取 - 导出 - 查找最大值 - 绘制数据

    第1课 创建数据 - 我们从创建自己的数据集开始分析.这可以防止阅读本教程的最终用户为得到下面的结果而不得不下载许多文件.我们将把这个数据集导出到一个文本文件中,这样您就可以获得从文本文件中一些拉取数 ...

  7. 一款APP的开发设计是如何从0到1一步一步设计的

    目前在行业里,关于APP界面设计规范也是层次不齐,很多都还停留在6的设备和ios 9的系统之上,而现在最新的是iphone 7和iOS 10了(更新换代真的很快),我这里说的是最新的iOS 界面设计规 ...

  8. okhttp3 ExceptionInInitializerError 异常处理

    okhttp3 在Android4.4上出现下面异常 java.lang.ExceptionInInitializerError at okhttp3.OkHttpClient.newSslSocke ...

  9. 利用Axis2默认口令安全漏洞入侵WebService网站

    近期,在黑吧安全网上关注了几则利用Axis2默认口令进行渗透测试的案例,大家的渗透思路基本一致,利用的技术工具也大致相同,我在总结这几则案例的基础之上进行了技术思路的拓展.黑吧安全网Axis2默认口令 ...

  10. (转)ORA-01502

    问题:ora-01502 索引或这类索引的分区处于不可用状态 引发:移动数据表分区,导致索引失效 解决:重建失效索引 1. select index_name ,status  from user_i ...