BroadcastReceiver的两种应用方法

来源:互联网 发布:mac 运行windows程序 编辑:程序博客网 时间:2024/06/06 06:57

BroadcastReceiver有两种应用方法:

1.静态应用

(1)创建一个xxxReceiver继承自BroadcastReceiver

public class xxxReceiver extends BroadcastReceiver{    //复写onReceiver方法    public void onReceiver(Context Context, Intent Intent){        //在此处编写触发广播后需要实现的动作    }}

(2)在AndroidManifest.xml中声明该广播,比如充电状态改变时

        <receiver android:name=".xxxReceiver">            <intent-filter>                <action andorid:name="android.intent.action.BATTERY_CHANGED"/>            </intent-filter>        </receiver>
2.动态应用

直接在代码中通过registerReceiver方法注册,unregisterReceiver方法注销

private BroadcastReceiver mIntentReceiver = new BroadcastReceiver(){    public void onReceive(Context Context, Intent Intent){    //在此处编写触发广播后需要实现的动作    }};   private void registerBatteryReceiver(){IntentFilter localIntentFilter = new IntentFilter();localIntentFilter.addAction("android.intent.action.BATTERY_CHANGED");registerReceiver(this.mIntentReceiver, localIntentFilter);//动态注册}private void unregisterBatteryReceiver(){unregisterReceiver(this.mIntentReceiver);//动态注销}protected void onPause(){super.onPause();unregisterBatteryReceiver();}  protected void onResume() {    super.onResume();    registerBatteryReceiver();}
0 0
原创粉丝点击