Android的广播机制实现 BroadcastReceiver
本文由发表于7年前 | Android | 评论数 1 |  被围观 12,062 views+

Android的广播机制

使用Android的广播机制进行广播事件,是通过定义一个继承Broadcast Receiver的类实现的,覆盖BroadcastReceiver类的onReceive()方法,在该方法中响应事件。Android系统中定义了很多标准的Broadcast Action来响应系统广播事件。

public abstract class
BroadcastReceiver
extends Object
在AndroidManifest.xml配置响应的广播类型
<receiver android:name=".TestReceiver">
	<intent-filter>
		<action android:name="android.intent.action.EDIT"></action>
	</intent-filter>		
</receiver>

在Activity中的按钮事件编写如下代码:

public void onClick(View v) {
	Intent intent = new Intent();			
	//设置消息类型
	intent.setAction(Intent.ACTION_EDIT);
	//发送广播
	BroadcastTestActivity.this.sendBroadcast(intent);
}
注册BroadcastReceiver的方法

为了实现监听,BroadcastReceiver必须进行注册,注册的方法有以下两种:

① 在应用程序的代码当中进行注册

注册BroadcastReceiver:
registerReceiver(receiver.filter);
取消注册BroadcastReceiver:
unregisterReceiver(receiver0);

使用这种方法注册监听一般用在BroadcastReceiver更新UI时。例如在Activity中,启动时注册BroadcastReceiver,当Activity不可见时取消注册。


② 在AndroidManifest.xml当中进行注册

<receiver android:name=".TestReceiver">
	<intent-filter>
		<action android:name="android.intent.action.EDIT"></action>
	</intent-filter>		
</receiver>

使用这种方式注册的BroadcastReceiver,即使应用程序没有启动,或者被kill掉以后,也始终会处于活动状态。

(特别说明:本文部分内容是在观看marschen的Android视频教程时做的笔记,感谢marschen推出的视频教程,这里也推荐给大家:http://www.marschen.com/portal.php)

除了文章中有特别说明,均为IT宅原创文章,转载请以链接形式注明出处。
本文链接:http://www.itzhai.com/androids-broadcast-mechanism-to-achieve-broadcastreceiver.html
arthinking 指弹吉他 && 技术 more
分享到:
 
2011 7/12
文章评论
    一条评论
  1. ss 2013年08月30日15:54:57  #-49楼 回复 回复

    应用“强制停止“后广播接收器无效,有解否?

给我留言

有人回复时邮件通知我
Android的相关文章
随机文章 本月热门 热评
1 使用JSTL格式化从服务器获取的Date类型数据 2011/9/7
2 汇编中的大小写字母转换的方法 2011/4/16
3 jQuery编写钟摆式滚动器 2011/5/15
4 JavaScript设计模式笔记 – 享元模式 代理模式 2012/11/21
5 C++语法笔记 – 继承与派生 2011/9/3
6 UML笔记 UML统一建模语言介绍 UML图形的基本绘制 2011/10/9
友情推荐 更多
破博客 文官洗碗安天下,武将打怪定乾坤。多么美好的年代,思之令人泪落。
行知-追寻技术之美 关注大数据,分布式系统
我爱编程 编程成长轨迹
Cynthia's Blog 学习笔记 知识总结 思考感悟
 
猜您喜欢
欢迎关注我的公众号 IT宅
关于IT宅 文章归档

IT宅中的文章除了标题注明转载或有特别说明的文章,均为IT宅的技术知识总结,学习笔记或随笔。如果喜欢,请使用文章下面提供的分享组件。转载请注明出处并加入文章的原链接。 感谢大家的支持。

联系我们:admin@itzhai.com

Theme by arthinking. Copyright © 2011-2015 IT宅.com 保留所有权利.