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

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广播机制是实现系统事件通知和跨应用通信的重要手段。理解并熟练运用广播,可以提升应用的功能性和响应性。在实际开发中,根据需求选择合适的注册方式,合理设计IntentFilter,以及适时使用...

    基于Android系统的BroadcastReceiver广播机制设计源码解析

    本项目深入解析了基于Android系统的BroadcastReceiver广播机制,包含42个文件,其中包括15个XML配置文件、10个PNG图片文件、4个Java源文件和若干其他类型...项目文档详实,适用于对Android广播机制有深入研究的需求者。

    Android 之 广播BroadcastReceiver

    广播是Android系统中的一种全局通知机制,当某个事件发生时,系统会发送一个广播,所有注册了该事件的BroadcastReceiver都可以接收到这个消息,并根据需要执行相应的操作。在本文中,我们将深入探讨...

    Android四大组件——BroadcastReceiver普通广播、有序广播、拦截广播、本地广播、Sticky广播、系统广播

    在Android应用开发中,BroadcastReceiver(广播接收器)是四大组件之一,它是系统用来传递消息和事件的重要机制。BroadcastReceiver可以监听系统或应用程序发送的广播Intent,并在接收到广播时执行相应的操作。以下...

    Android学习之BroadcastReceiver总结

    在Android系统中,BroadcastReceiver(广播接收者)是四大组件之一,它扮演着接收系统或应用广播消息的重要角色。BroadcastReceiver使得应用可以在不运行的情况下,响应系统或其它应用发出的事件,例如系统启动完成...

    Android广播机制详解

    本文将详细解析Android广播机制的核心概念、工作原理以及如何使用。 一、广播基本概念 1. 广播Intent:广播Intent是Android系统中用于发送和接收广播消息的对象。它包含一个动作(Action)、数据(Data)、类型...

    Android 广播机制实例

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

    广播BroadcastReceiver静态动态有序广播

    **有序广播**(Ordered Broadcast)是Android广播机制的一种类型,它按照接收器声明的优先级顺序依次执行。每个接收器都有机会处理广播并可以决定是否将广播传递给下一个接收器。在onReceive()方法中,可以通过`...

    Android之Broadcast, BroadcastReceiver(广播)

    1. Android广播机制: - 广播分为有序广播和无序广播。有序广播(Ordered Broadcast)按照优先级进行接收,接收者可以拦截并修改广播数据;无序广播(Broadcast)则无法被拦截,所有匹配的接收者都会接收到广播,但...

    BroadcastReceiver广播接收器演示demo

    通过"BroadcastReceiver广播接收器演示demo",开发者可以深入理解BroadcastReceiver的工作原理和使用方式,从而在实际项目中灵活运用广播机制,实现组件间的通信和事件响应。注意,虽然广播是Android系统中的一个...

    Android broadcast广播机制的使用

    本文将深入探讨Android广播机制的使用,包括动态注册与静态注册两种方式。 首先,我们要理解广播的基本概念。Android广播是系统用于在整个应用环境中发送全局通知的方式。这些通知可以是系统级别的,如设备启动、...

    android的广播机制和广播的简单使用

    首先,理解Android广播机制的核心概念。Android系统会发送各种广播Intent,比如设备启动、网络状态改变等。这些Intent可以被任何注册了对应意图过滤器的BroadcastReceiver所接收。BroadcastReceiver是Android中处理...

    Android的BroadcastReceiver简单示例

    在Android系统中,BroadcastReceiver(广播接收者)是四大组件之一,它负责监听系统或应用程序发布的广播消息。BroadcastReceiver能够使应用在不运行的情况下对特定事件做出响应,从而实现跨应用通信。本示例将详细...

    android广播机制

    总的来说,Android的广播机制为应用程序提供了一种广泛而灵活的通信手段,无论是系统级事件还是应用间的通信,都可以通过BroadcastReceiver来实现。理解并熟练掌握BroadcastReceiver的使用,对于Android开发者来说至...

    Android 广播接收者--BroadcastReceiver

    在Android系统中,广播接收者(BroadcastReceiver)是四大组件之一,它负责监听并响应系统或应用程序发布的广播意图(Intent)。BroadcastReceiver可以帮助我们实现后台运行的任务,即使应用没有在前台运行,也能...

    android BroadcastReceiver相关测试代码

    在Android开发中,BroadcastReceiver是系统广播机制的重要组成部分,它允许应用程序在不直接交互的情况下接收并响应系统或自定义广播事件。BroadcastReceiver是Android四大组件之一,用于处理系统全局的事件通知。本...

    android广播时间处理机制

    总之,Android的广播时间处理机制是系统事件响应的重要组成部分,通过BroadcastReceiver可以监听和处理各种系统事件,包括自定义事件和系统预定义事件。理解并熟练掌握这一机制对于Android应用开发至关重要。

    Android BroadcastReceiver Demo

    BroadcastReceiver的工作原理是基于Android系统的消息传递机制,当系统或者某个应用发送一个广播Intent时,所有注册了对应Intent过滤器的BroadcastReceiver都会被触发。BroadcastReceiver有两种注册方式:静态注册和...

    Android BroadcastReceiver广播机制概述

    Android的BroadcastReceiver广播机制是Android系统中的一种重要组件,它允许应用程序在系统内接收和响应全局性的事件。BroadcastReceiver作为广播接收者,主要用于监听并处理系统或者应用发送的广播消息。这种机制...

Global site tag (gtag.js) - Google Analytics