Отключить держать экран включенным - PullRequest
67 голосов
/ 26 января 2011

Я использовал:

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

Как мне вернуться в состояние по умолчанию (без сохранения)?

Ответы [ 4 ]

135 голосов
/ 26 января 2011

Я думаю, что это должно сделать это:

getWindow().clearFlags(android.view.WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

Подробнее см. API .

19 голосов
/ 05 апреля 2013

Если вместо этого вы установите флаг android: keepScreenOn = "true" ( документация ) только для представлений, для которых экран должен оставаться включенным, вам не нужно будет сбрасывать флаг вручную.

4 голосов
/ 16 июня 2015

Другой подход

getWindow().setFlags(this.getWindow().getFlags() & ~WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

Также прочитайте это

и вы также можете установить android:keepScreenOn="true" в корневом представлении в формате XML.

0 голосов
/ 08 ноября 2018

Непосредственно из документации:

Примечание. Вам не нужно снимать флажок FLAG_KEEP_SCREEN_ON, если только вы больше не хотите, чтобы экран оставался включенным в вашем запущенном приложении (например, если вы хотите, чтобы экран отключался после определенного периода бездействия). Менеджер окон заботится о том, чтобы все происходило правильно, когда приложение переходит в фоновый режим или возвращается на передний план. Но если вы хотите явно сбросить флажок и тем самым позволить экрану снова выключиться, используйте clearFlags (): getWindow (). ClearFlags (WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON).

...