【发布时间】:2017-12-08 03:21:27
【问题描述】:
我有一个设备直接连接到Tablet 的引脚(用于充电),而不是电池。
这使得Tablet 正在充电,尽管实际上电池已放电或几乎没有充电。
有一些方法可以检测到Tablet 正在充电,即使没有连接电池。
显然ACTION_BATTERY_CHANGED 不起作用,因为电池没有充电。
有什么想法吗?
【问题讨论】:
我有一个设备直接连接到Tablet 的引脚(用于充电),而不是电池。
这使得Tablet 正在充电,尽管实际上电池已放电或几乎没有充电。
有一些方法可以检测到Tablet 正在充电,即使没有连接电池。
显然ACTION_BATTERY_CHANGED 不起作用,因为电池没有充电。
有什么想法吗?
【问题讨论】:
试试这个...
您应该使用BroadcastReceiver
来更好地获取更改值IntentFilter batteryLevelFilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
registerReceiver(batteryLevelReceiver, batteryLevelFilter);
BroadcastReceiver batteryLevelReceiver = new BroadcastReceiver(){
@Override
public void onReceive(Context context, Intent intent){
int level = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
int scale = intent.getIntExtra(BatteryManager.EXTRA_SCALE, -1);
float battPct = level/(float)scale;
}
};
【讨论】: