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. hdoj--1864--最大保险额(背包)

    最大报销额 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Subm ...

  2. Python的filter与map内置函数

    简单的记录下这两个函数的功能: list(filter(lambda x : x % 2, range(10))) 上例是返回了0-10之间的所有基数组成的列表.filter()有2个参数,第一个参数 ...

  3. BZOJ 1041 数学

    思路: $x^2+y^2=r^2$$y=\sqrt{(r+x)(r-x)}$令$ d=gcd(r+x,r-x)$设A=$(r-x)/d$ $B=(r+x)/d$则$gcd(A,B)=1$$y^2=d^ ...

  4. Unity3d Vector3

    using UnityEngine; using System.Collections; public class test : MonoBehaviour { void Start () { Vec ...

  5. 外观模式(Facade)C++实现

    外观模式 意图: 为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一系统更加容易使用. 适用性: 1.在设计初期阶段,应该要有意识的将不同的两个层分离,比如经典的三层架 ...

  6. 使用原生JS实现简单的ajax

    Ajax是一种使用javascript内置对象向服务器发送请求/接收响应的技术.它可以再页面已经完全显示出来之后再和服务器进行少量的数据交互,所以可以实现局部内容的刷新. ajax的实现,主要是靠ja ...

  7. mybatis 高级映射和spring整合之逆向工程(7)

    mybatis 高级映射和spring整合之逆向工程(7) 4.0 逆向工程 4.1 mybatis需要程序员自己编写sql语句,mybatis官方提供逆向工程,可以针对单表自动生成mybatis执行 ...

  8. The AJAX response: XML, HTML, or JSON?

    shared from: http://www.quirksmode.org/blog/archives/2005/12/the_ajax_respon.html 1. 返回XML文档 对返回的XML ...

  9. 【转载】Java实现word转pdf

    最近遇到一个项目需要把word转成pdf,GOOGLE了一下网上的方案有很多,比如虚拟打印.给word装扩展插件等,这些方案都依赖于ms word程序,在java代码中也得使用诸如jacob或jcom ...

  10. MD5加盐,实现一人一密

    理论上md5是不可逆的,而且MD5本来也不是作加密使用,而是用来校验数据的完整性,只是因为其不可逆且稳定.快速的特点,被广泛用于对明文密码的加密. 至今仍然后很多开发人员相信MD5的保密性,也许因为他 ...