android的广播介绍,在manifest .xml中注册广播
来源:互联网 发布:aa录音软件中文版下载 编辑:程序博客网 时间:2024/05/16 10:55
Android 中有各式各样的广播,各种广播在Android 系统中运行,当系统/应用程序运行时便会向 Android 注册各种广播,我们所要做的就是注册感兴趣的广播,然后做相应的处理。
1,第一种注册广播的方式,在manifest .xml清单文件中注册
1.1这里首先自定义一个广播发送者
public class BroadCastActivity extends Activity { public static final String ACTION_INTENT_TEST = "com.terry.broadcast.test";//定义一个广播的动作 /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button btn = (Button) findViewById(R.id.Button01); btn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Intent intent = new Intent(ACTION_INTENT_TEST); sendBroadcast(intent);//通过此方法将广播发送出去 } }); }}1.2自定义一个广播接收者,需要继承BroadcastReceiver
public class myBroadCast extends BroadcastReceiver {//每接收到一次广播,此类都被实例化一次,此类的声明周期是短暂的 public myBroadCast() { Log.v("BROADCAST_TAG", "myBroadCast"); } @Override public void onReceive(Context context, Intent intent) {//重写onReceive方法,当广播到来的时候系统会调用此类 // TODO Auto-generated method stub Log.v("BROADCAST_TAG", "onReceive"); }}1.3在清单文件中注册一个广播,为哪个接收者注册接收的广播的类型
那么有些人会问了,如果我在一个广播接收器中要处理多个动作呢?那要如何去处理?
在Android 的接收器中onReceive 已经为我们想到的,同样的你必须在Intent-filter 里面注册该动作,可以是系统的广播动作也可以是自己需要的广播,之后你之需要在onReceive 方法中,通过intent.getAction()判断传进来的动作即可做出不同的处理,不同的动作。
小结:
- 在Android 中如果要发送一个广播必须使用sendBroadCast 向系统发送对其感兴趣的广播接收器中。
- 使用广播必须要有一个intent 对象必设置其action动作对象
- 使用广播必须在配置文件中显式的指明该广播对象
- 每次接收广播都会重新生成一个接收广播的对象
- 在BroadCast 中尽量不要处理太多逻辑问题,建议复杂的逻辑交给Activity 或者 Service 去处理
装载自http://www.cnblogs.com/TerryBlog/archive/2010/08/16/1801016.html
- android的广播介绍,在manifest .xml中注册广播
- android的广播介绍,在程序中注册广播
- android 广播,manifest.xml注册,代码编写
- 在Android Manifest中注册DownloadManager下载完成发送的广播
- mars android开发之一:在AndroidMainfest.xml中注册广播
- Android中关闭XML注册的广播receiver方法
- 在Android学习中有关于广播注册的问题
- Android中不能静态注册的广播
- 在Activity中注册广播
- BroadcastReceiver(一)在AndroidManifest.xml中配置的广播接收器(自动注册注销)
- Android广播之注册广播(包括静态广播和动态广播的注册)源码分析
- Android的广播机制注册
- Android广播的注册方式
- mars android开发之二:在代码中注册广播
- Android在Service中注册动态广播接收者
- Android静态注册广播和动态注册广播的区别
- 我对广播的理解:在manifset文件中注册广播组件
- Android中广播的使用(动态、静态注册的区别,有序无序广播的使用)
- hdu 4417 Super Mario 树状数组+离线操作
- C++与c内存相关
- Windows7(64位)安装Oracle10g
- 状态机编程之我见
- 详解UML中的关系(泛化、实现、依赖、关联【聚合、组合】)
- android的广播介绍,在manifest .xml中注册广播
- 《C Traps and Pitfalls》(C陷阱与缺陷)
- C# Socket编程笔记
- Codeforces Round #142 (Div. 2)
- 母函数模板
- Boost学习笔记 BOOST_STATIC_ASSERT
- 在Mac os x 10.8下通过FreeTDS 连接MSSQL Server 08R2 问题之一
- 使用SAX和dom4j解析XML文档
- C++ STL priority_queue