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. 框架-Java:Spring MVC

    ylbtech-框架-Java:Spring MVC Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 We ...

  2. Wannafly挑战赛25 B 面积并 数学

    题面 题意:有一个正n边形,它的外接圆的圆心位于原点,半径为l .以原点为圆心,r为半径作一个圆,求圆和这个正n边形的面积并.3<=n<=1e8  1<=l<=1e6 0< ...

  3. 什么是Ajax和JSON,他们的优缺点?

    ajax的概念:ajax是一种通过后台与服务器进行少量的数据交换,实现页面异步更新 是一种创建交互式网页应用的网页开发技术. json的概念:json是一种轻量级的数据交换格式,具有良好的可读和便于快 ...

  4. FileCopy文件复制

    package cn.com.filecopy; import java.io.FileInputStream; import java.io.FileNotFoundException; impor ...

  5. Boolean占几个字节

    Boolean:1.1bit 2.1byte 3.4byte 简书地址:  http://www.jianshu.com/p/2f663dc820d0 官网地址:       http://docs. ...

  6. Hadoop MapReduce编程 API入门系列之wordcount版本3(七)

    这篇博客,给大家,体会不一样的版本编程. 代码 package zhouls.bigdata.myMapReduce.wordcount3; import java.io.IOException; i ...

  7. javascript一个作用域案例分析

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. 自定义安装MS Office Project2007会出错

    作者:朱金灿 来源:http://blog.csdn.net/clever101 今天使用虚拟光驱文件自定义安装MSOffice Project2007,如下图: 然后总是出现一个错误: 从网上找来一 ...

  9. WPF 标题栏 右键窗口标题添加关于对话框

    /// <summary> /// wpf标题栏 右键菜单 中添加新项 /// </summary> public partial class MainWindow : Win ...

  10. SqlServer与MySql语法比较

    1.复制表(包括表结构.表数据) SqlServer: Select * into user_copy from user MySql: CREATE TABLE user_copy LIKE use ...