Android从电池视图获取省电时间

sen*_*ale 0 time android battery

在这里,我可以看到手机使用电池可以使用多长时间?我能以某种方式在我的应用程序中获取此信息吗?

这是获取电池健康温度的代码,但我不需要此代码。我只需要时间,如以下视图所示:

在此处输入图片说明

Ale*_*s G 5

我认为您无法直接从电池信息中获得此值。但是,您可以做的就是这个。

  1. 读取剩余百分比(例如x%)和当前时间戳
  2. 注册一个广播接收器以了解电池电量的变化-并onReceive读取新百分比(例如y%,通常是x - 1,但可能是x - 2或其他),然后再次获取时间戳
  3. 获取两个时间戳和两个百分比(x-y)之间的差-这将显示(x-y)%的电池可持续使用多少时间。现在只需将其推断为y%-您就可以得到答案

然后,您可以使用所链接问题中的代码来确定百分比。

例如,您在时间戳1361882535654上获得了80%的电池。然后,当您获得79%时,您的时间戳为1361882801234。这意味着1%的电池可持续使用大约265秒,因此,电池上的剩余时间约为79 * 265 = 209305秒,即2天10小时8分25秒。

是的,这自然会花费一些时间(即,您必须等待这200或任何秒数才能使电池电量下降)。您的系统应用程序可以立即显示它的原因是,系统进程在后台连续运行,并且很可能会在后台进行。