Изменение яркости экрана на устройстве HTC Sense
Старый подход
Window window = getWindow();
LayoutParams layoutParams = window.getAttributes();
layoutParams.screenBrightness = newFloatValue;
window.setAttributes(layoutParams);
не работает в HTC Desire с включенной автоматической настройкой яркости в меню "Настройки"> "Экран"> "Яркость".
Для этого есть обходной путь для HTC?
1 ответ
Конечно, вы не видите никаких изменений, так как настройки установлены на Автоматическая яркость. Это означает, что любые ручные изменения не учитываются. Или я что-то упустил?
Я только что протестировал его на HTC Desire HD (2.3.5), и яркость экрана меняется примерно на секунду, но затем она автоматически переустанавливается / перезаписывается автоматической яркостью. Однако, если вы снимите флажок "Автояркость" в настройках, вы увидите, что значение изменилось правильно.
Итак, IMO все работает, как ожидалось. Если вы хотите, чтобы ваши изменения вступили в силу, вам, возможно, придется сначала отключить Автояркость:
Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE, Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);