23

ユーザーが特定の活動をしているときにAndroid携帯電話のスリープを無効にする方法はありますか?

ユーザーがメインアクティビティを実行しているときにスクリーンタイムアウトを無効にしたい。

それを行う方法はありますか?それが可能かどうかわからないのですか?

4

5 に答える 5

45

これを試して。

 @Override
 protected void onCreate(Bundle icicle) 
 {
     super.onCreate(icicle);
     getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
 }
于 2012-11-03T13:21:37.880 に答える
7

私はこれを使用しています:

@Override
protected void onCreate(Bundle icicle) 
{
      super.onCreate(icicle);
      getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}

マニフェストに許可を置くことを忘れないでください

<uses-permission android:name="android.permission.WAKE_LOCK" />
于 2014-11-04T03:28:16.447 に答える
5

追加するのが最善の方法

android:keepScreenOn="true"

そのアクティビティの親レイアウトに。

于 2018-07-19T05:12:50.760 に答える
3

特定のビューでスリープモードを防止したいだけの場合は、そのビューでsetKeepScreenOn(true)を呼び出すか、keepScreenOnプロパティをtrueに設定します。これにより、ビューが画面に表示されているときに画面が消えるのを防ぐことができます。これには特別な許可は必要ありません。

于 2017-08-31T08:40:59.693 に答える
2

次のコードを使用して、特定の機能で画面をオンに保つことができます。

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");
wl.acquire();
   //..screen will stay on during this section..
wl.release();

これにより、電源サービスが取得され、注目を集め、コードが完了した後に解放されます

于 2014-09-22T10:29:06.493 に答える