我有broadcastreceiver
正确接收事件android.intent.action.ACTION_POWER_CONNECTED
。
然后我使用此代码检测设备是否已连接到墙socket (AC)
,USB
或无线充电:
IntentFilter ifilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
Intent batteryStatus = Contexto.registerReceiver(null, ifilter);
int chargePlug = batteryStatus.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1);
boolean bUsb = chargePlug == BatteryManager.BATTERY_PLUGGED_USB;
boolean bAC = chargePlug == BatteryManager.BATTERY_PLUGGED_AC;
boolean bWireless = chargePlug == BatteryManager.BATTERY_PLUGGED_WIRELESS;
它完美地在一个设备中工作。但是在另一个设备中,它总是说即使插在墙上也只是在USB
充电。知道为什么会这样吗?