【问题标题】:Android get battey time from battery viewAndroid 从电池视图中获取电池时间
【发布时间】:2013-02-26 11:54:06
【问题描述】:

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

Here is code for getting battery health temperature,但我不需要这个。我只需要时间,如下图所示:

【问题讨论】:

标签: android time battery


【解决方案1】:

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

  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 秒或任何几秒才能使电池电量下降)。您的系统应用程序可以立即显示它的原因是因为系统进程在后台连续运行,并且很可能在运行过程中这样做。

【讨论】:

    【解决方案2】:

    我猜你可以使用 BatterStatusImpl 和一个名为 IBatteryStatsIInterface 这些是来自 android git 的私有 api 分支

    【讨论】:

      【解决方案3】:

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-08-02
        • 1970-01-01
        • 1970-01-01
        • 2016-04-23
        • 2015-11-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多