в моем приложении я отображать уровень заряда батареи .. я получаю уровень заряда батареи таким образом:Какая разница между двумя методами расчета уровня заряда батареи в Android?
int level = battery.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
И это нормально, я могу увидеть процент .. но онлайн я нашел еще один способ:
int level = battery.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
int scale = battery.getIntExtra(BatteryManager.EXTRA_SCALE, -1);
float batteryPct = level/(float)scale;
В чем разница? Почему я бы разделил уровень с масштабом? Благодаря
Масштаб жестко закодирован до 100 в исходном коде Android, поэтому он в основном тот же, если только какой-либо производитель не захочет изменить масштаб на что-то еще. (Http://androidxref.com/5.0.0_r2/xref/frameworks/base/services/core/java/com/android/server/BatteryService.java#BATTERY_SCALE) – black