1

我想读出我的 Moto 360 剩余的电池容量。我遇到了显示这个值的表盘,但我想知道如何获得它。我想在我自己创建的表盘上显示这个值。

从 API 级别 21 可以使用BatteryManager.BATTERY_PROPERTY_CAPACITY,但是我可以将另一个命令用于 API 级别 20 吗?

谢谢

4

1 回答 1

1

根据电池监控培训,您可以使用以下方法获取当前电池信息:

IntentFilter ifilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
Intent batteryStatus = context.registerReceiver(null, ifilter);
int level = batteryStatus.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
int scale = batteryStatus.getIntExtra(BatteryManager.EXTRA_SCALE, -1);
float batteryPct = level / (float)scale;

请注意,您需要继续重复调用它以获取更新的电池电量。当唤醒你的应用程序并检查它本身确实需要电池时,他们建议:

通常,在设备连接到交流充电器的情况下,您应该最大化后台更新的速率,如果通过 USB 充电,则应降低速率,如果电池正在放电,则应进一步降低。

于 2014-11-30T02:56:27.047 回答