1
我需要获得设备的正常运行时间,为此我一直使用名为SystemClock.uptimeMillis()
的方法。有些用户抱怨说正常运行时间的统计数据不正确,而且设备的运行时间也长了很多。获得设备正常运行时间的正确方法是什么?
我阅读了文档,但我很困惑SystemClock
课程中的哪种方法会产生真正的正常运行时间 - 我应该使用elapsedRealtime()
吗?
我需要获得设备的正常运行时间,为此我一直使用名为SystemClock.uptimeMillis()
的方法。有些用户抱怨说正常运行时间的统计数据不正确,而且设备的运行时间也长了很多。获得设备正常运行时间的正确方法是什么?
我阅读了文档,但我很困惑SystemClock
课程中的哪种方法会产生真正的正常运行时间 - 我应该使用elapsedRealtime()
吗?
这取决于您如何定义关于您的应用程序的“正常运行时间”。
uptimeMillis()
确实不是在睡眠模式下花费的时间。因此,如果用户打开他们的设备,在进入睡眠状态之前运行它五分钟,然后一周不返回设备,则uptimeMillis()
将返回大约五分钟的值。
elapsedRealtime()
确实在睡眠模式下所花的时间。因此,如果用户打开设备,在进入睡眠状态之前运行它五分钟,然后在一周内不返回设备,elapsedRealtime()
将返回一周左右的值。