0
BroadcastReceiver mBatteryReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
int status = intent.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
int level = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, 0);
String batteryPercentage = String.valueOf(level);
Log.d("battery",batteryPercentage);
boolean isCharging = status == BatteryManager.BATTERY_STATUS_CHARGING;
Log.d("ischarging", String.valueOf(isCharging));
int chargePlug = intent.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1);
boolean usbCharge = chargePlug == BatteryManager.BATTERY_PLUGGED_USB;
boolean acCharge = chargePlug == BatteryManager.BATTERY_PLUGGED_AC;
String action = intent.getAction();
int plugged = intent.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1);
if (plugged == BatteryManager.BATTERY_PLUGGED_AC && DefaultManager.acChargeConnect && level >= DefaultManager.batteryPercentageTriggerValue) {
//do something
} else if (plugged == BatteryManager.BATTERY_PLUGGED_USB && DefaultManager.usbConnect){
//do something
} else if (plugged == 0) {
// on battery power
} else {
// intent didnt include extra info
}
}
};
因此,我想要检测何时断开电源线或USB线并在事件发生时执行某些操作。 我已经通过BatteryManager
文档,并尝试了几个常量提到那里,但似乎没有工作。我想捕获充电器断开的事件来做一些事情。任何指针赞赏。感谢以编程方式在Android中断开电源电缆(USB或AC充电器)时检测到