`
thunder_yan
  • 浏览: 111575 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Android Broadcast receiver 编程

阅读更多

在Android中,广播(broadcast)是非常有用的功能。通过广播可以通知其他广播接受这某个事件发生了。比如电源不足,信号不好等。下面我做了一个简单的demo,首先看看activity

 

 

 

 

package com.android.broadcasttest; 
 
import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
 
public class BroadcastTest extends Activity { 
    public static final String NEW_LIFEFORM_DETECTED =  
        "com.android.broadcasttest.NEW_LIFEFORM"; 
     
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.main); 
         
        Button btn0 = (Button)findViewById(R.id.btn0); 
        btn0.setOnClickListener(new OnClickListener() { 
            public void onClick(View v) { 
                Intent it = new Intent(NEW_LIFEFORM_DETECTED);           
                sendBroadcast(it); 
            } 
        }); 
    } 
} 

 

 

 

在这个activity中生成了一个按钮,当按下按钮的时候通过sendBroadcast()发送一个广播。我们再看看广播接收者代码:

 

package com.android.broadcasttest; 
 
import android.content.BroadcastReceiver; 
import android.content.Context; 
import android.content.Intent; 
import android.util.Log; 
import android.widget.Toast; 
 
public class MyBroadcastReceiver extends BroadcastReceiver { 
    public static final String BURN = 
        "com.paad.alien.action.BURN_IT_WITH_FIRE"; 
     
    public MyBroadcastReceiver () { 
        Log.v("BROADCAST_TAG", "myBroadCast"); 
    } 
    @Override 
    public void onReceive(Context context, Intent intent) { 
        // TODO Auto-generated method stub       
        Toast.makeText(context, "成功接收广播:", Toast.LENGTH_LONG).show();   
    } 
 
} 

 

在onReceive()中实现了当接收到广播所做的动作。我们还需要在AndroidManifest.xml中注册该receiver

 

 

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
      package="com.android.broadcasttest" 
      android:versionCode="1" 
      android:versionName="1.0"> 
    <application android:icon="@drawable/icon" android:label="@string/app_name"> 
        <activity android:name=".BroadcastTest" 
                  android:label="@string/app_name"> 
            <intent-filter> 
                <action android:name="android.intent.action.MAIN" /> 
                <category android:name="android.intent.category.LAUNCHER" /> 
            </intent-filter> 
        </activity> 
        <receiver android:name=".MyBroadcastReceiver"> 
            <intent-filter> 
                <action android:name="com.android.broadcasttest.NEW_LIFEFORM" /> 
            </intent-filter> 
        </receiver> 
    </application>         
    <uses-sdk android:minSdkVersion="8" /> 
</manifest>  
 

 

 

在receiver的action中定义了该receiver能够接受的广播。

分享到:
评论

相关推荐

    android编程 android编程入门 android开发 android软件

    Android编程入门是学习Android开发的基础,它涉及到许多关键概念和技术,包括应用程序的组成元素、Activity与Task管理、进程和线程以及元素的生命周期。 一、应用程序的组成元素 1. **Activity元素**:Activity是...

    Android实例四:BroadCast_Receiver

    这篇博客"Android实例四:BroadCast_Receiver"将深入探讨如何在实际项目中使用BroadcastReceiver。 首先,我们需要了解BroadcastReceiver的基本概念。BroadcastReceiver是一个抽象类,用于接收并处理系统或应用广播...

    Android 4高级编程(第3版)源代码

    第5章 Intent和Broadcast Receiver 第6章 使用Internet资源 第7章 文件、保存状态和首选项 第8章 数据库和Content Provider 第9章 在后台操作 第10章 扩展用户体验 第11章 高级用户体验 第12章 硬件传感器 第13章 ...

    Android 4高级编程(第3版) 带完整书签

    2. **Android应用程序组件**:详述Activity、Service、Broadcast Receiver、Content Provider等核心组件的工作原理和使用方法,以及它们之间的交互。 3. **用户界面设计**:讲解如何使用布局管理器创建响应式UI,...

    Android 4高级编程(第3版)

    Android应用程序主要由Activity、Service、Broadcast Receiver、Content Provider和Intent等组件构成。书中深入探讨了这些组件的工作原理和使用方法,包括如何创建、配置、管理Activity,以及Service的生命周期管理...

    Android 4高级编程(第3版)源代码.zip

    《Android 4高级编程(第3版)》是一本深入探讨Android应用开发的权威书籍,其源代码提供了丰富的实例和示例,对于开发者来说是极好的学习资源。这本书旨在帮助有经验的Android开发者掌握更高级的技术,提升他们的编程...

    Android 4高级编程 第3版

    首先,书中详细讲解了Android应用程序的基础架构,包括组件模型、意图(Intent)机制、服务(Service)以及广播接收器(Broadcast Receiver)。这些是Android应用开发的核心元素,理解它们如何协同工作是构建复杂应用的...

    01.Android应用基础编程.rar

    Android应用主要由四大组件构成:Activity、Service、Broadcast Receiver和Content Provider。Activity是用户界面的基石,它代表了用户与应用交互的视图。Service则是在后台运行,不与用户界面直接交互的服务。...

    Android编程兵书

    此外,Android提供了一个全面的应用程序框架,包括Activity、Intent、Service、Broadcast Receiver和Content Provider等组件,这些组件相互协作,构建出动态且功能丰富的应用。例如,Activity是用户界面的主要承载者...

    Android 2 高级编程 (中文) 第二版

    - **Android应用程序的组成部分**: 活动(Activity)、服务(Service)、广播接收器(Broadcast Receiver)等。 - **应用程序清单文件(Manifest)**: 用途及配置项解析。 - **使用清单编辑器**: 配置应用程序的元数据。 ##...

    Android高级编程 pdf

    本书首先介绍了Android系统的架构和组件,包括Activity、Intent、Service、Broadcast Receiver以及Content Provider等关键元素。Activity是用户界面的核心,Intent则是不同组件间通信的桥梁,Service用于在后台执行...

    Broadcast_Receiver_Example

    Broadcast_Receiver_Example 是一个基于Android平台的项目,主要展示了如何使用Broadcast Receiver这一核心组件。Broadcast Receiver(广播接收器)是Android四大组件之一,用于接收系统或应用广播事件,即使应用在...

    Android 4 编程入门(Begin Android 4)英文 pdf

    2. **基本概念与工具**:介绍Android的基本架构,包括应用程序组件(Activity、Service、Broadcast Receiver和Content Provider),以及使用Android Studio创建项目、编写代码和调试应用的基本流程。 3. **用户界面...

    Android 4 高级编程 源码

    6. **广播接收器(Broadcast Receiver)**:监控系统事件,如开机、网络状态改变等,实现被动响应。 7. **服务(Service)**:长时间在后台运行的任务,比如音乐播放或定时任务。 8. **通知(Notification)**:...

    Android broadcast电池电量显示源码.zip源码资源下载

    本源码资源"Android broadcast电池电量显示"着重展示了如何使用BroadcastReceiver来实时监控设备的电池状态,并将电量信息展示给用户。在Java编程语言环境下,结合Apache的常见库,我们可以构建一个高效且用户友好的...

    时间计时器

    【时间计时器】是一款基于Android Studio开发的应用,它整合了Broadcast Receiver(广播接收者)和服务(Service)等核心组件,以实现精准的时间管理功能。在Android应用开发中,理解和掌握这些知识点至关重要,因为...

    Android基础编程-Android 概 况.pptx

    Android基础编程涵盖的是Android操作系统的基本概念、发展历程以及其核心架构。Android是由Andy Rubin创立的,最初是一个基于Linux内核的开源操作系统,专为移动设备设计,包括智能手机、平板电脑和智能家电。2005年...

    Android 4.0 编程入门经典-开发智能手机和平板电脑应用

    Android应用通常由多个组件组成,如Activity、Service、Broadcast Receiver和Content Provider。书中会深入解析这些组件的作用和使用方法,帮助开发者理解它们如何协同工作,构建复杂的系统。 UI设计是用户体验的...

    Android4高级编程(第3版)英文版

    5. **Intents and Broadcast Receivers**:意图(Intent)是Android中用于组件间通信的机制,而广播接收器(Broadcast Receiver)是接收来自系统和其他应用的广播信息的组件。这一章节会讲解如何利用这些机制进行...

Global site tag (gtag.js) - Google Analytics