博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android 的Broadcast与BroadcastReceiver的学习
阅读量:7060 次
发布时间:2019-06-28

本文共 2131 字,大约阅读时间需要 7 分钟。

查了很多资料

了解的流程如下

它是用来做什么的:是程序之间的通信,我们可以用来插件之间的通信

它的工作流程:有广播Broadcast 就要有接收者BroadcastReceiver。

OK ,其实看归看,实际操作一下就什么都明白了。具体的概念最好找一个简短的ppt看一下,然后运行一下就了解了。

我把他们的代码贴给大家共享一下,采用的是静态注册的方式(因为有两种方式可以采用),定义发送广播的方式为无序(这个也有两种方式)。

这个Activity是调用sendBroadcast(it)来说明要发一个广播的

package com.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 BroadcastTestActivity extends Activity {
public static final String NEW_LIFEFORM_DETECTED = "com.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的布局如下:

那么接下来就是要接收广播的代码了:

package com.BroadcastTest; import android.app.Activity; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.Toast; public class MyBroadcastReceiver extends BroadcastReceiver  { 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();           } }

下面就是配置文件中的静态注册的:

运行的结果如下:

时间仓促,理解的不够深刻,欢迎多多指正!

转载于:https://www.cnblogs.com/NinaHY/archive/2012/04/03/2431240.html

你可能感兴趣的文章
ASP.NET Core之跨平台的实时性能监控
查看>>
tomcat日志切割
查看>>
iOS CAShapeLayer、CADisplayLink 实现波浪动画效果
查看>>
Shell常用命令
查看>>
python内置函数和序列化
查看>>
web项目显示乱码解决方案整理
查看>>
10.12-10.16 rewrite配置if,break和last的用法,规则,nginx全局变量
查看>>
无root手机版抓android包工具,超好用
查看>>
Python教程-字典(2)
查看>>
CentOS 6.7 安装 Erlang18.1
查看>>
初识linux
查看>>
HAproxy用法深入
查看>>
组合模式
查看>>
简单的DHCP分配,加子网划分实验
查看>>
75.开发常用软件 技巧收集
查看>>
WannaCry勒索软件还在继续传播和感染中
查看>>
TarsGo新版本发布,支持protobuf,zipkin和自定义插件
查看>>
开发十年,留下最完整的Java架构学习路线,学完年薪65W
查看>>
华为eNSP中交换机命令行简单介绍
查看>>
Snap up RS3gold 3500M 60% off rs3 for sale &learn
查看>>