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系统中,广播(Broadcast)和Service是两个至关重要的组件,它们在应用程序间通信和后台任务处理中扮演着核心角色。本示例项目“android 广播和service 样例”提供了一个服务(Service)监听其他程序广播的...
在Android系统中,Broadcast(广播)是一种非常重要的组件,它使得应用程序之间能够进行无状态的信息传递,即使这些应用并未在运行。Broadcast机制是Android事件驱动模型的核心部分,它允许应用程序在系统级别发布和...
Android广播是系统用于在整个应用环境中发送全局通知的方式。这些通知可以是系统级别的,如设备启动、网络状态变化,也可以是应用级别的,如应用数据的更新。广播接收者(BroadcastReceiver)是接收这些广播的组件,...
在Android系统中,Broadcast(广播)是一种非常重要的组件,它允许应用程序之间进行异步通信,无需两者之间有明确的依赖关系。BroadcastReceiver(广播接收器)是处理这些广播的核心类。下面将详细介绍Broadcast的...
在Android开发中,广播Broadcast是一种重要的组件,它允许应用程序接收并响应系统或应用程序发送的全局事件。本示例“Android利用广播Broadcast监听网络的变化”旨在教你如何创建一个BroadcastReceiver来监控设备的...
在Android系统中,广播(Broadcast)是一种非常重要的组件,它允许应用程序之间进行异步通信,即使这些应用在后台运行或完全未启动。BroadcastReceiver是处理广播的核心类,它监听并响应系统或应用发送的广播意图...
在Android系统中,Broadcast(广播)是一种非常重要的组件,它使得应用程序之间能够进行无接触的信息传递,即使这些应用并未在运行。BroadcastReceiver(广播接收器)是处理广播的核心类,它可以监听并响应系统或...
"Android UDP broadcast Example"是关于如何在Android平台上实现UDP广播接收和发送的一个示例项目。这个项目的核心功能包括: 1. **接受UDP信号**: 在Android中,我们可以使用`java.net.DatagramSocket`类来创建...
在Android开发中,Broadcast(广播)是一种非常重要的组件,它使得应用程序之间能够相互通信,即使这些应用在后台运行或者完全未启动。Android Studio 4.2.2 提供了便利的方式来创建和管理Broadcast。本篇文章将深入...
在Android系统中,Broadcast(广播)和Intent是两个至关重要的组件,它们构成了应用程序间通信的基础。Broadcast用于在应用程序之间传递消息,而Intent则扮演着触发操作的“信使”角色。理解并熟练运用这两个概念,...
在Android开发中,广播(Broadcast)是一种非常重要的组件,它允许应用程序之间进行异步通信,无需两者之间有明确的依赖关系。"Android 利用广播发送通知"的标题揭示了我们要探讨的核心技术:如何利用广播机制来触发...
在Android开发领域,四大组件是应用的核心组成部分,其中包括Broadcast(广播)。Broadcast Receiver(广播接收者)是Android系统中用于在应用程序之间传递消息的一种机制。它允许应用在后台接收和响应系统或其它...
1. Android广播机制: - 广播分为有序广播和无序广播。有序广播(Ordered Broadcast)按照优先级进行接收,接收者可以拦截并修改广播数据;无序广播(Broadcast)则无法被拦截,所有匹配的接收者都会接收到广播,但...
Android系统中的广播(Broadcast)机制是一种关键的组件间通信方式,允许应用的不同部分即使在不同进程中也能相互通信。广播通常通过Intent对象来传递信息,Intent不仅可以在同一个应用内部使用,也可以跨应用发送,...
基于Android的广播接收器的设计与应用 本文主要介绍了基于Android的广播接收器的设计与应用。 Android系统通过广播接收器可以实时监听系统中的广播信息,当用户使用手机时,如遇到电话或者短信,系统会将电话或短信...
首先,我们要理解Android广播的工作原理。广播Intent是Android系统中的一种特殊Intent,用于在系统内广泛传播信息。任何注册了匹配接收器的应用都可以接收到这个广播,无论它们当前是否运行。广播分为两种类型:有序...
Android Broadcast 静态注册Demo代码
本地广播(Local Broadcast)是广播机制的一个子集,它只限于在应用程序内部通信,不涉及到系统全局的广播接收者。本地广播相比全局广播更加高效,因为它减少了系统的资源消耗。下面将详细介绍Android本地广播的工作...
本篇将基于提供的文件内容详细讲解Android广播的简单使用方法。 #### 一、广播的概念 广播是Android四大组件之一,在Android中起到非常重要的作用。它主要用于在应用程序的不同部分或不同应用程序之间发送和接收...
本教程将深入探讨Android广播的使用,适合初学者入门。 首先,我们需要了解Broadcast Receiver的基本概念。Broadcast Receiver是一个无界面的组件,当接收到匹配的广播意图(Intent)时,它会执行相应的操作。有两种...