`
1140566087
  • 浏览: 547115 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
博客专栏
2c4ae07c-10c2-3bb0-a106-d91fe0a10f37
c/c++ 入门笔记
浏览量:18055
3161ba8d-c410-3ef9-871c-3e48524c5263
Android 学习笔记
浏览量:309241
Group-logo
J2ME 基础学习课程集
浏览量:17958
A98a97d4-eb03-3faf-af96-c7c28f709feb
Spring 学习过程记录...
浏览量:17183
社区版块
存档分类
最新评论

Android 之 系统广播机制BroadcastReceiver的使用

阅读更多

BroadcastReceiver :广播接收器
* 除了接收用户发送的广播消息之外,还有一个重要的功能:接收系统广播。通过监听系统,   广播可以在系统特定的时刻执行某些操作;

1、广播处理机制:
* Android中的系统广播是广泛应用于应用程序之间通信的一种手段,它类似于事件处理机制,不同的地方就是广播处理的是系统级别的事件处理
  过程,而一般事件是组件级别的;
* 系统广播事件的使用:这些广播是由系统自动发出的,直接定义事件接收器进行接收;

2、 Android中常见的广播Action常量:
* ACTION_TIME_CHANGED :系统时间被改变;
* ACTION_DATE_CHANGED : 系统日期被改变;
* ACTION_TIMEZONE_CHANGED :系统时区被改变;
* ACTION_BOOT_COMPLETED :系统启动完成;
* ACTION_BATTERY_CHANGED : 电池电量改变;
* ACTION_SHUTDOWN : 系统被关闭;
* Action_BATTRY_LOW : 电池电量低;

通过监听特殊的广播,可以实现应用跟随系统执行特定的操作;  

3、注册receiver:

a、如何使用代码进行receiver的注册:
/* 通过代码来注册或销毁一个广播接收器 */
/* 使用Activity.onResume()方法中使用Context.registerReceiver()方法进行注册
* 可以在onPause()方法中使用Context.unregisterReceiver(r)来销毁一个广播接收器
*代码示例如下:
* */
public void codeMakeBroadcastReceiver(){
/* 实例化一个IntentFilter对象 */
IntentFilter filter  = new IntentFilter();

/* 实例化广播接收器 *//* 自己编写的一个继承了BroadcastReceiver的类 */
SystemBroadcastRec s = new SystemBroadcastRec();

/* 注册receiver */
registerReceiver(s, filter);

/* 注销receiver */
unregisterReceiver(s);
}

b、 <!-- 测试:系统广播事件   注册广播接收器 -->
        <receiver android:name=".SystemBroadcastRec">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
           
        </receiver>


小贴上:
1、
Android 系统中有非常多的广播,当系统启动或应用运行时便会向 Android 注册各种广播,Android 系统接收到广播后,
会判断哪种广播需要哪种事件。广播事件的筛选由Android 系统完成,在接收广播时,程序员仅需要定义广播的过滤器,
即接收什么样的广播内容。
2、
从定义来讲,广播主要分发送方和接收方,Android中的广播也是如此。Android中广播的接收方处理逻辑相对复杂一些,
首先要注册广播过滤器并继承abstract class BroadcastReceiver实现广播接收的onReceive方法。


使用案例:开机启动Action,动作实现一个提示框,失效系统广播事件处理的效果;
广播接收器java代码部分:

package com.example.broadcastreceiver;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
import android.widget.Toast;

/*  接收广播  , 该类用于测试系统广播事件  */
public class SystemBroadcastRec extends BroadcastReceiver {

	/* 处理系统广播事件 , 执行响应 */
	public void onReceive(Context context, Intent intent) {
		
		Toast.makeText(context, "测试系统广播事件,启动时执行....", 6000).show();
	}

}


//在AndroidMainfest.xml中进行配置:

<receiver android:name=".SystemBroadcastRec">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            
</receiver>



  • 大小: 24.6 KB
  • 大小: 104.9 KB
  • 大小: 20.9 KB
1
0
分享到:
评论

相关推荐

    Android 广播机制实例

    Android中的广播机制设计的非常出色,很多事情原本需要开发者亲自操作的,现在只需等待广播告知自己就可以了,大大减少了开发的工作量和开发周期。而作为应用开发者,就需要数练掌握Android系统提供的一个开发利器,...

    指尖疯Android4.4视频第17集:BroadcastReceiver

    广播,这个诞生于1906年的科技产品,持续...Android通过广播机制,能够让订阅者接受到想听到的广播,并进行进一步的处理和操作。如果你想在虚拟的android世界中创建属于你自己的电台广播,那么就赶紧点击本集视频观看吧

    Android BroadcastReceiver广播机制概述

    主要为大家详细介绍了Android BroadcastReceiver广播机制,感兴趣的小伙伴们可以参考一下

    android之BroadcastReceiver应用详解

    今天我们来讲一下Android中BroadcastReceiver的相关知识。 BroadcastReceiver也就是“广播接收者”的意思,顾名思义...Android中的广播机制设计的非常出色,很多事情原本需要开发者亲自操作的,现在只需等待广播告知自

    android学习教程--广播机制

    所谓广播机制是指,当触发一个事件时会做出相应的动作,比如说当别人发一条短信给你,然后BroadcastReceiver会监听这个事件(Intent),并判断用到了Intent中的Actiond的哪个BroadcastActions,如SMS_RECEIVED就是...

    Android 广播机制broadcast用法实例

    这个例子主要研究Android broadcast广播机制的实现,以一个电池监测及广播通知为例,介绍了实现broadcast的过程:大致的思路是:注册一个系统 BroadcastReceiver,作为访问电池计量之用,如果捕捉到的action是ACTION...

    深入Android中BroadcastReceiver的两种注册方式(静态和动态)详解

    今天我们一起来探讨下安卓中BroadcastReceiver组件以及详细分析下它的两种注册方式。 BroadcastReceiver也就是“广播接收者...Android中的广播机制设计的非常出色,很多事情原本需要开发者亲自操作的,现在只需等待广播

    Android开发之BroadcastReceiver用法实例分析

    在Android系统中,广播(Broadcast)是在组件之间传播数据(Intent)的一种机制。 Braodcast Receiver顾名思义就是广播接收器,它和事件处理机制类似,但是事件处理机制是程序组件级别的(比如:按钮的单击事件),...

    android 广播机制

    广播被分为两种不同的类型:“普通广播(Normal broadcasts)”和“有序广播(Ordered broadcasts)”。 本文讲解广播机制的应用

    详解Android中BroadCastReceiver组件

    BroadcastReceiver也就是“广播接收者”的意思,它是用来接收来自系统和应用中的广播。 在Android中,Broadcast是一种广泛运用的在应用程序之间传输信息的机制。而BroadcastReceiver是对发送出来的 Broadcast进行...

    疯狂Android讲义源码

     1.3.2 使用Android模拟器  (Emulator) 14  1.3.3 使用DDMS进行调试 15  1.3.4 Android Debug Bridge(ADB)  的用法 16  1.3.5 使用DX编译Android应用 18  1.3.6 使用Android Asset Packaging  Tool...

    Android开发艺术探索.任玉刚(带详细书签).pdf

    10.2 Android的消息机制分析 375 10.2.1 ThreadLocal的工作原理 375 10.2.2 消息队列的工作原理 380 10.2.3 Looper的工作原理 383 10.2.4 Handler的工作原理 385 10.3 主线程的消息循环 389 第11章 Android的...

    疯狂Android讲义(第2版)源代码 第6章~第9章

    第3章、Android事件处理,包括按键响应机制和消息传递机制 3.2、基于监听器的事件处理: 3.3、基于回调的事件的处理: 3.4、响应系统设置的事件: 3.5、Handler消息传递机制: 第4章、深入理解Activity 4.1、...

    Android实例代码

    第3章、Android事件处理,包括按键响应机制和消息传递机制 3.2、基于监听器的事件处理: 3.3、基于回调的事件的处理: 3.4、响应系统设置的事件: 3.5、Handler消息传递机制: 第4章、深入理解Activity 4.1、...

    疯狂Android讲义.part2

    1.3.2 使用Android模拟器 (Emulator) 14 1.3.3 使用DDMS进行调试 15 1.3.4 Android Debug Bridge(ADB) 的用法 16 1.3.5 使用DX编译Android应用 18 1.3.6 使用Android Asset Packaging Tool(AAPT)打包资源 19 ...

    疯狂Android讲义.part1

    1.3.2 使用Android模拟器 (Emulator) 14 1.3.3 使用DDMS进行调试 15 1.3.4 Android Debug Bridge(ADB) 的用法 16 1.3.5 使用DX编译Android应用 18 1.3.6 使用Android Asset Packaging Tool(AAPT)打包资源 19 ...

    实验四-Android基本组件交互实验.doc

    在Android的系统中就存在许多这样的广播,比如电池电量过 低或信号过低时,系统就会发出广播进行通知。 应用程序如果需要响应某一个广播消息,应该注册对应的BroadcastReceiver对象, 该对象继承自BroadcastReceiver...

    Android AOSP 6.0.1 registerReceiver广播注册流程分析

    广播作为 Android 开发的四大组间之一,当我们发送广播以后,发生了什么?广播接收者最终如何收到了广播。 一、复盘广播的使用 在 Android 开发中使用广播分为三个步骤: 1.新建广播接收者 BroadcastReceiver; 2....

Global site tag (gtag.js) - Google Analytics