Android: prevent display from turning off

2020-03-02 03:19发布

问题:

I've written a small game, that is only controlled via some sensors. There is no touchscreninput or something similar.

The problem is, that after a few seconds of gaming, the screen turns off (because of no touch-input)

Is there something like a manifest-entry that prevents the screen from this behaviour?

regards

回答1:

The simplest would be adding android:keepScreenOn="true" to the layout in your xml.



回答2:

use this code in the your game's Activity as first line in the onCreate() after the super call:

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

This will result in the System handling the screen for you.

Best wishes, Tim



回答3:

You can request a WakeLock as specified here: http://developer.android.com/reference/android/os/PowerManager.html



回答4:

use WakeLock

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
WakeLock mWakeLock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK | PowerManager.ON_AFTER_RELEASE, "My Tag");
mWakeLock.acquire();

and put the permission in your manifest file

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

dont forget to release that lock in your onStop()