2

デバイスがスリープ状態になっている時間を取得する方法を知っている人はいますか? デバイスのバッテリーの起動時間を取得しようとしていますが、SystemClock を使用して起動してからの合計時間を取得できますが、sleepTime のメソッドがありません。睡眠時間を取得できれば、totalTime - sleepTime を実行して awakeTime を取得できますが、睡眠時間を取得する方法がわかりません。

助言がありますか?

ありがとう

4

1 に答える 1

6

SystemClock.elapsedRealtime()「システムが起動してからの時間で、ディープスリープを含みます」。

SystemClock.uptimeMillis()「システムが起動してからミリ秒単位でカウントされます。このクロックは、システムがディープ スリープ (CPU オフ、ディスプレイが暗い、外部入力を待機しているデバイス) に入ると停止しますが、クロック スケーリング、アイドル、またはその他の省電力メカニズムの影響を受けません。 "

したがって、SystemClock.elapsedRealtime()-SystemClock.uptimeMillis()「深い睡眠」の時間の長さになるはずです。

于 2013-04-12T16:40:04.553 に答える