Регулировка яркости экрана с помощью WindowManager перестает работать после неактивности

1

Я использую этот код для изменения яркости активности, затемняя его.

WindowManager.LayoutParams layoutParameters = getWindow().getAttributes();
layoutParameters.screenBrightness = 0.0075f;
getWindow().setAttributes(layoutParameters);

Я также настраиваю яркость android.provider.Settings.System.

Моя проблема заключается в том, что после ~ 8 секунд бездействия яркость экрана возвращается к нормальной (то есть снова светится). Кто-нибудь знает, почему это происходит, и как я могу изменить эту настройку?

Спасибо!

Теги:

2 ответа

1

Я не знаю, переоценил бы ваш layoutParameters, но, возможно, попробуйте использовать полный wakeLock, чтобы экран не менялся.

0

Вы должны изменить значение Settings.System.SCREEN_BRIGHTNESS_MODE с автоматического на ручное, а затем изменить значение int Settings.System.SCREEN_BRIGHTNESS. Добавляйте только эти строки кода:

Settings.System.putInt(getActivity().getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE, Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);
Settings.System.putInt(getActivity().getContentResolver(), Settings.System.SCREEN_BRIGHTNESS, brightness);//for persistent change

Ещё вопросы

Сообщество Overcoder
Наверх
Меню