我正在开发Android Wear Watch Face,我想显示手表和手机的电池百分比。我设法得到了Watch的百分比,但我是Java&的新手。安卓,所以请通过解释轻松告诉我。
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)) + "%";
}
这是我现在的代码,用来给我手机的百分比。 请注意,这是一个Watch Face,因此它是一项没有活动的服务。
使用此解决方案,我不断获得1%而非实际百分比。
答案 0 :(得分:5)
batteryStatus.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
将为您提供1到100之间的值,因此您可以将其作为百分比直接插入。您无需按比例划分。