Я использовал:
getWindow().addFlags(android.view.WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
Как вернуться к состоянию по умолчанию (без продолжения)?
Я использовал:
getWindow().addFlags(android.view.WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
Как вернуться к состоянию по умолчанию (без продолжения)?
Я думаю, что это должно сделать это:
getWindow().clearFlags(android.view.WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
Дополнительные сведения см. в разделе API.
Если вместо этого установить флаг android:keepScreenOn="true" (документация) только для представлений, которым необходимо оставить экран включенным, вам не нужно сбрасывать флаг вручную.
Другой подход
getWindow().setFlags(this.getWindow().getFlags() & ~WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
и вы также можете установить android:keepScreenOn="true"
в корневом представлении в xml.
Непосредственно из документации:
Примечание. Вам не нужно снимать флаг FLAG_KEEP_SCREEN_ON, если вы больше не хотите, чтобы экран оставался включенным в запущенном приложении (например, если вы хотите, чтобы экран отключался по истечении определенного периода бездействия). Оконный менеджер заботится о том, чтобы при переходе приложения в фоновый режим или возвращении на передний план происходили правильные действия. Но если вы хотите явно сбросить флаг и тем самым позволить экрану снова отключиться, используйте clearFlags(): getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON).