示例:监听电量变化(动态注册)
private BatteryLevelReceiver batteryLevelReceiver;
@Override
protected void onCreate(Bundle bundle) {
super.onCreate(bundle);
setContentView(R.layout.activity_main);
Log.d(TAG, "onCreate: !");
initView();
initBroadcast();
}
private void initBroadcast() {
IntentFilter intentFilter = new IntentFilter();
// 设定监听的广播类型
intentFilter.addAction(Intent.ACTION_BATTERY_CHANGED);
intentFilter.addAction(Intent.ACTION_BATTERY_LOW);
intentFilter.addAction(Intent.ACTION_BATTERY_OKAY);
// 实例化一个广播接收器
batteryLevelReceiver = new BatteryLevelReceiver();
// 注册广播接收器
this.registerReceiver(batteryLevelReceiver, intentFilter);
}
private class BatteryLevelReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent