4

2009 年のログを見ると、誰もがこれは選択肢ではないと不満を漏らしていたようです。

今私が見つけたのは、人々がそれを行うためのさまざまな方法を教えていることだけです.私のデバイスではどれも機能しません. keepScreenOn、または LayoutParams の対応するフラグは、画面を暗くするためのソリューションとして複数の人が提供しているにもかかわらず、画面をオンにしておくためだけに機能します。

WakeLocks, on the other hand (as I have seen them demonstrated online, anyway), appear to do absolutely nothing, not even keep the screen alive. The screen dims at the normal time, and I even get to see this hilarious little number on the monitor I have running on my laptop:

02-04 00:10:30.687: D/PowerManagerService(192): @PowerManagement: 'MyActivitiyName' releaseWakeLock when screen locked

I made sure to follow all the wakelock instructions on this page: http://blog.blundell-apps.com/tut-keep-screen-onawake-3-possible-ways/

There were no build errors, and no runtime errors, either. The screen just dims and then shuts off, in the standard time frame.

Help?

4

2 に答える 2

2

onCreate() メソッドに次のステートメントを追加してみてください。これがうまくいくことを願っています。

getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

于 2013-07-29T22:27:30.947 に答える
1

さて、私はあまりにもやみくもにチュートリアルに従って、フラグについて愚かでした. サンプルの wakelock フラグは画面を暗くしないようにするためのものだと思っていましたが、逆でした。ウェイクロックフラグをに切り替えました

PowerManager.SCREEN_BRIGHT_WAKE_LOCK

ウェイクロックの取得と解放を onCreate と onDestroy に移動し、今では私が望むことを行います。

(明確にするために、現在のアクティビティがデモに必要な最終状態であるため、これは私が望むことを行います。アクティビティを一時停止したい場合はいつでも onDestroy を呼び出す必要があります)

于 2013-07-30T13:40:35.850 に答える