8

disable/delayプログラムで画面をロックしたいと思います。これを調べてみると、KeyguardManager減価償却されている/一貫して動作しないFLAG_DISMISS_KEYGUARD、バックグラウンドでこれを実行したいのでオプションではない、バッテリーの理由で WakeLock を使用したくない、デバイス管理はこれに対応していないようですまた、SCREEN_OFF_TIMEOUT画面がスリープ状態のときは制御できますが、画面ロックの同様のタイムアウトを見つけることができませんでした。

ここで何が欠けていますか?ありがとう。

4

3 に答える 3

13

これを試してみてください。アクティビティが上にある限り、画面/ディスプレイを起動し続けます。 getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

また、これにはマニフェストでの許可は必要ありません。

于 2013-11-13T13:24:59.457 に答える
3

@nandeeshの答えは機能していますが、ロック画面の使用フラグを無効にすることは非推奨です:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
于 2013-04-17T09:42:30.530 に答える
2

これを試しましたか?

KeyguardManager keyguardManager = (KeyguardManager)getSystemService(Activity.KEYGUARD_SERVICE);
KeyguardLock lock = keyguardManager.newKeyguardLock(KEYGUARD_SERVICE);
lock.disableKeyguard();

追加

<uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>

これを使用してキーガードを無効にできます。

于 2012-08-18T20:01:12.777 に答える