Android:深度睡眠的时间间隔(System.nanoTime(),System.currentTimeMillis



我正在实现一个应用程序,该应用程序具有最低API 14级(这很重要),并且需要一致的间隔测量。不需要毫秒精度,只需要始终计算时间(经过的秒数)。

到目前为止,为了处理时间间隔,我知道以下解决方案:

  1. System.nanoTime()-如果Android正在运行,效果很好,但在深度睡眠时停止(这很糟糕)
  2. System.currentTimeMillis()-很好,但不合适,因为它可以由用户或使用setCurrentTimeMillis(long)的代码更改
  3. SystemClock.elapsedRealtimeNanos()-即使在深度睡眠时也计算运行时间,但需要API 17级

有没有其他方法可以在API 14上获得合理的二次精度区间测量
我想用System.currentTimeMillis()收听广播,看看系统时钟是否发生了变化。然而,这似乎不是最好的解决方案。

您尝试过SystemClock.elapedRealtime()吗?

相关内容

  • 没有找到相关文章

最新更新