`

Android Broadcast(广播)简单样例

阅读更多

Android Broadcast(广播)使用

 

 

package com.broad;

 

 

 

import android.app.Activity;

 

import android.content.BroadcastReceiver;

 

import android.content.Context;

 

import android.content.Intent;

 

import android.content.IntentFilter;

 

import android.os.Bundle;

 

import android.util.Log;

 

import android.view.View;

 

import android.view.View.OnClickListener;

 

import android.widget.Button;

 

/**

 

 *  广播的使用

 

 * @author XP

 

 *

 

 */

 

public class BroadCastUse extends Activity {

 

    /** Called when the activity is first created. */

 

 

 

private Button button;

 

//定义广播动作

 

private static final String BROADCASE_ID = "broadcase";

 

 

 

    @Override

 

    public void onCreate(Bundle savedInstanceState) {

 

        super.onCreate(savedInstanceState);

 

        setContentView(R.layout.main);

 

        

 

        button = (Button)findViewById(R.id.buttonBC);

 

        

 

        button.setOnClickListener(btnClick);

 

        

 

    }

 

    

 

    @Override

 

protected void onResume() {

 

// TODO Auto-generated method stub

 

super.onResume();

 

//注册广播

 

regeditBroad();

 

}

 

 

 

@Override

 

protected void onPause() {

 

// TODO Auto-generated method stub

 

super.onPause();

 

//销毁广播

 

destoryBroad();

 

}

 

 

 

private OnClickListener btnClick = new OnClickListener() {

 

 

 

@Override

 

public void onClick(View v) {

 

// TODO Auto-generated method stub

 

Intent intent = new Intent(BROADCASE_ID);

 

//发送广播

 

sendBroadcast(intent);

 

}

 

};

 

/**

 

* 注册广播

 

*/

 

private void regeditBroad(){

 

IntentFilter filter = new IntentFilter();

 //过滤定义广播动作

filter.addAction(BROADCASE_ID);

 

registerReceiver(broadcast, filter);

 

}

 

/**

 

* 销毁广播

 

*/

 

private void destoryBroad(){

 

if(broadcast != null){

 

unregisterReceiver(broadcast);

 

}

 

}

 

 

 

private BroadcastReceiver broadcast = new BroadcastReceiver() {

 

//接收广播,实现逻辑判断 

 

@Override

 

public void onReceive(Context context, Intent intent) {

 

// TODO Auto-generated method stub

 

if(intent.getAction() == BROADCASE_ID){

 

Log.i("console", "onReceive");

 

}

 

}

 

};

 

    

 

}

 广播发送有三种形式,即,sendBroadcast(),sendOrderedBroadcast(),sendStickyBroadcast()

sendBroadcast():普通广播 (Normal broadcasts) 
发送一个广播,所以监听该广播的广播接收者都可以监听到该广播。

sendOrderedBroadcast():有序广播 (Ordered broadcasts) 
按照接收者的优先级顺序接收广播 , 优先级别在 intent-filter 中的 priority 中声明 ,-1000 到1000 之间 , 值越大 , 优先级越高 . 可以终止广播意图的继续传播 . 接收者可以篡改内容 .

 sendStickyBroadcast():异步广播 
当处理完之后的Intent ,依然存在,这时候registerReceiver(BroadcastReceiver, IntentFilter) 还能收到他的值,直到你把它去掉 , 不能将处理结果传给下一个接收者 , 无法终止广播 . 

分享到:
评论

相关推荐

    android 广播和service 样例

    在Android系统中,广播(Broadcast)和Service是两个至关重要的组件,它们在应用程序间通信和后台任务处理中扮演着核心角色。本示例项目“android 广播和service 样例”提供了一个服务(Service)监听其他程序广播的...

    Android Broadcast 广播机制 实例

    在Android系统中,Broadcast(广播)是一种非常重要的组件,它使得应用程序之间能够进行无状态的信息传递,即使这些应用并未在运行。Broadcast机制是Android事件驱动模型的核心部分,它允许应用程序在系统级别发布和...

    Android broadcast广播机制的使用

    Android广播是系统用于在整个应用环境中发送全局通知的方式。这些通知可以是系统级别的,如设备启动、网络状态变化,也可以是应用级别的,如应用数据的更新。广播接收者(BroadcastReceiver)是接收这些广播的组件,...

    Broadcast广播的使用

    在Android系统中,Broadcast(广播)是一种非常重要的组件,它允许应用程序之间进行异步通信,无需两者之间有明确的依赖关系。BroadcastReceiver(广播接收器)是处理这些广播的核心类。下面将详细介绍Broadcast的...

    Android利用广播BroadCast监听网络的变化

    在Android开发中,广播Broadcast是一种重要的组件,它允许应用程序接收并响应系统或应用程序发送的全局事件。本示例“Android利用广播Broadcast监听网络的变化”旨在教你如何创建一个BroadcastReceiver来监控设备的...

    broadcast_Android 广播机制broadcast用法实例.rar

    在Android系统中,广播(Broadcast)是一种非常重要的组件,它允许应用程序之间进行异步通信,即使这些应用在后台运行或完全未启动。BroadcastReceiver是处理广播的核心类,它监听并响应系统或应用发送的广播意图...

    android Broadcast全部功能演示

    在Android系统中,Broadcast(广播)是一种非常重要的组件,它使得应用程序之间能够进行无接触的信息传递,即使这些应用并未在运行。BroadcastReceiver(广播接收器)是处理广播的核心类,它可以监听并响应系统或...

    Android UDP broadcast Example

    "Android UDP broadcast Example"是关于如何在Android平台上实现UDP广播接收和发送的一个示例项目。这个项目的核心功能包括: 1. **接受UDP信号**: 在Android中,我们可以使用`java.net.DatagramSocket`类来创建...

    AndroidStudio 4.2.2 控件 Broadcast 广播 使用示例

    在Android开发中,Broadcast(广播)是一种非常重要的组件,它使得应用程序之间能够相互通信,即使这些应用在后台运行或者完全未启动。Android Studio 4.2.2 提供了便利的方式来创建和管理Broadcast。本篇文章将深入...

    Android中关于Broadcast、Intent 的应用

    在Android系统中,Broadcast(广播)和Intent是两个至关重要的组件,它们构成了应用程序间通信的基础。Broadcast用于在应用程序之间传递消息,而Intent则扮演着触发操作的“信使”角色。理解并熟练运用这两个概念,...

    Android 利用广播发送通知

    在Android开发中,广播(Broadcast)是一种非常重要的组件,它允许应用程序之间进行异步通信,无需两者之间有明确的依赖关系。"Android 利用广播发送通知"的标题揭示了我们要探讨的核心技术:如何利用广播机制来触发...

    Android学习之Broadcast练习_dlc

    在Android开发领域,四大组件是应用的核心组成部分,其中包括Broadcast(广播)。Broadcast Receiver(广播接收者)是Android系统中用于在应用程序之间传递消息的一种机制。它允许应用在后台接收和响应系统或其它...

    Android之Broadcast, BroadcastReceiver(广播)

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

    Android系统中的广播(Broadcast)机制简要介绍和学习计划

    Android系统中的广播(Broadcast)机制是一种关键的组件间通信方式,允许应用的不同部分即使在不同进程中也能相互通信。广播通常通过Intent对象来传递信息,Intent不仅可以在同一个应用内部使用,也可以跨应用发送,...

    基于Android的广播接收器的设计与应用.pdf

    基于Android的广播接收器的设计与应用 本文主要介绍了基于Android的广播接收器的设计与应用。 Android系统通过广播接收器可以实时监听系统中的广播信息,当用户使用手机时,如遇到电话或者短信,系统会将电话或短信...

    Android Broadcast demo

    首先,我们要理解Android广播的工作原理。广播Intent是Android系统中的一种特殊Intent,用于在系统内广泛传播信息。任何注册了匹配接收器的应用都可以接收到这个广播,无论它们当前是否运行。广播分为两种类型:有序...

    Android Broadcast 静态注册Demo代码

    Android Broadcast 静态注册Demo代码

    Android 本地广播示例

    本地广播(Local Broadcast)是广播机制的一个子集,它只限于在应用程序内部通信,不涉及到系统全局的广播接收者。本地广播相比全局广播更加高效,因为它减少了系统的资源消耗。下面将详细介绍Android本地广播的工作...

    android 广播简单的使用

    本篇将基于提供的文件内容详细讲解Android广播的简单使用方法。 #### 一、广播的概念 广播是Android四大组件之一,在Android中起到非常重要的作用。它主要用于在应用程序的不同部分或不同应用程序之间发送和接收...

    android broadcast的使用

    本教程将深入探讨Android广播的使用,适合初学者入门。 首先,我们需要了解Broadcast Receiver的基本概念。Broadcast Receiver是一个无界面的组件,当接收到匹配的广播意图(Intent)时,它会执行相应的操作。有两种...

Global site tag (gtag.js) - Google Analytics