android中的广播

来源:互联网 发布:下载解压软件 编辑:程序博客网 时间:2024/05/30 05:07
 

Broadcast Receiver

广播接收器,它和事件的处理机制类似,只补过事件处理机制是程序组件级别的,而广播事件处理机制是系统级别的。

1.编写一个类继承BroadcastReceiver

Public  class MyReceiver extends  BroadcastReceiver

{

      Public void OnReceiver()

      {

           Log.i("BoradcastReceiver method");

      }

}

2.注册广播

方法1

<receiver>

  <intent-filter>

  <!-- 广播的类型-->

    <action android:name="com.myReceiver"/>

   </intent-filter>

</receiver>

方法2

MyReceiver  myReceiver  = new MyReceiver ();

IntenteFilter  filter = new  IntentFilter();

filter.setAction("com.myReceiver");

registerBroadCast(myReceiver ,);

这两种方式的区别在于

1.在AndroidMain.xml文件中注册广播,系统已启动广播已经注册了,属于全局注册广播。

而通过代码注册广播时局部注册。

2.在AndroidMain.xml文件中注册广播但Acitivity销毁,广播依然存在不与Acitivity共存亡。

3.构建Intent

Intent intent  =new Intent();

intent.setAction("om.myReceiver");

4.发送广播

sendBroadReceiver(intent);

广播的生命周期

BroadcastReceiver对象仅在调用onReceiver方法时有效,当该方法执行完毕后,系统认为销毁对象。也就说每次执行广播都会重新new一个新的广播。

系统定义的标准的Action

详情请见

E:\android\android-sdk-windows\docs\reference\android\content\Intent.html

原创粉丝点击