Изменение яркости экрана на устройстве HTC Sense - PullRequest
5 голосов
/ 06 января 2011

Старый подход

  Window window = getWindow();
  LayoutParams layoutParams = window.getAttributes();
  layoutParams.screenBrightness = newFloatValue;
  window.setAttributes(layoutParams);

не работает в HTC Desire с Автоматическая яркость включена Настройки> Дисплей> Яркость .
Есть ли для этого обходной путь для HTC?

1 Ответ

2 голосов
/ 26 августа 2012

Конечно, вы не видите никаких изменений, так как настройки установлены на Автоматическая яркость . Это означает, что любые ручные изменения не учитываются. Или я что-то упустил?

Я только что протестировал его на HTC Desire HD (2.3.5) , а яркость экрана ДЕЛАЕТ меняется примерно на секунду, но затем он сразу же перенастраивается перезаписывается автоматической яркостью. Однако, если вы снимите флажок «Автояркость» в настройках, вы увидите, что значение изменилось правильно.

Итак, по моему, все работает как положено. Если вы хотите, чтобы ваши изменения вступили в силу, вам, возможно, придется сначала отключить Автояркость:

Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE, Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL); 
...