一、监听电量变化的广播
第一步:创建一个广播接收者,继承自BroadcastReceiver
private class BatteryLevelReceiver extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent){ String action = intent.getAction(); Log.d(TAG,"收到了电量变化"+action); } }
动态注册
第二步:设置收听频道
IntentFilter intentFilter = new IntentFilter();
第三步:设置频道
例:收听电量变化
intentFilter.addAction(Intent.ACTION_BATTERY_CHANGED);
第四步:创建广播接收者
BatteryLevelReceiver batteryLevelReceiver = new BatteryLevelReceiver();
第五步:注册广播
this.registerReceiver(batteryLevelReceiver,intentFilter);
取消注册:
protected void onDestroy() { //防止内存泄漏 super.onDestroy(); if(batteryLevelReceiver!=null){ this.unregisterReceiver(batteryLevelReceiver); } }
静态注册
第一步:创建一个类,继承自BroadcastReceiver
public class BootCompleteReceiver extends BroadcastReceiver{略}
第二步:与动态设置action一样
<receiver android:name=".BootCompleteReceiver"> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED"></action> </intent-filter> </receiver>
发送自定义广播