3

私はウェイクロックを使わなければなりません(そうです、明白な理由で使うべきではありませんが、私はそれをするために支払われているので、選択の余地はありません笑)

私の質問は非常に単純です。アプリをonPauseまたはonStopのままにすると、アプリのウェイクロックは自動的に解放されますか?

ユーザーがアプリを閉じても、なんらかの奇妙な理由でウェイクロックがまだオンになっているのを避けたいと思います。

現在のシステムで問題が発生しており、アプリがメッセージハンドラーを介してリリースウェイクロックを呼び出しています(別のスレッドからのものであるため)。これは「遅すぎる」ために発生し、アプリにはもう存在しないためにクラッシュします。ウェイクロックへの参照。

私はあまり明確ではないかもしれませんが、ここでの主な質問は:

アプリのライフサイクル外で電話に影響を与えるアプリのウェイクロックについて心配する必要がありますか?

乾杯

ジェイソン

4

3 に答える 3

3

私の質問は非常に単純です。アプリをonPauseまたはonStopのままにすると、アプリのウェイクロックは自動的に解放されますか?

いいえ。android:keepScreenOnそのため、ではなくアクティビティで使用する必要がありますWakeLock

アプリのライフサイクル外で電話に影響を与えるアプリのウェイクロックについて心配する必要がありますか?

絶対。あなたがそれを解放するまでWakeLock、電話は眠りに落ちることはありません。

于 2011-08-02T16:09:44.510 に答える
0

ウェイクロックは、アプリケーションがフォアグラウンドにない場合でも、デバイスに確実に影響します。

それが実際にウェイクロックを取得することの全体的なポイントです

したがって、他に選択肢がない場合にのみウェイクロックを使用するようにしてください。アプリがバックグラウンドにあるときにウェイクロックが必要ない場合は、onPause()メソッドでウェイクロックを解除してください。

これは、デバイスのパフォーマンスとバッテリーに大きく影響します。

于 2012-08-21T07:24:33.160 に答える
-3

アプリケーションがフォーカスから外れると、ウェイクロックはキャンセルされます。アプリケーションがフォーカスされている場合にのみ、ウェイクロックが有効になります。

于 2011-08-02T16:09:46.253 に答える