我正在开发一个Android磨损观察脸,我想显示手表和手机的电池百分比。我成功地获得了Watch的百分比,但我对Java和Android并不陌生,所以请简单地解释一下。
private String getBatteryInfoPhone()
{
float retVal = 0;
IntentFilter iFilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
Intent batteryStatus = registerReceiver(null, iFilter);
int status = batteryStatus.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
int level = batteryStatus.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
int scale = batteryStatus.getIntExtra(BatteryManager.EXTRA_SCALE, -1);
retVal = level / (float)scale;
return Integer.toString(Math.round(retVal)) + "%";
}这是我现在要给我的电话百分比的密码。请注意,这是一个监视脸,所以它是一个没有活动的服务。
使用这个解决方案,我经常得到1%,而不是实际百分比。
发布于 2015-03-09 19:03:54
batteryStatus.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);将给你的价值在1到100之间,所以你可以直接插入它作为百分比。你不需要把它除以比例。
https://stackoverflow.com/questions/28938464
复制相似问题