Получить текущую яркость экрана - PullRequest
4 голосов
/ 10 июня 2011

В настоящее время я использую приведенный ниже код для получения текущей яркости экрана

...
// for HTC Nexus One and HTC Desire
String cmd = "cat /sys/class/leds/lcd-backlight/brightness";
java.lang.Process p = Runtime.getRuntime().exec(cmd); 
BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()),cmd.length());
...

Это нормально, когда я использую для получения яркости в устройствах HTC (Nexus One, Desire).Но при запуске этого кода на Samsung Galaxy S этот код недействителен, потому что путь в «cmd» неправильный на этом устройстве.Проблема в том, что у меня нет Samsung Galaxy S, чтобы узнать правильный путь яркости.Не могли бы вы сказать мне правильный путь на устройстве Samsung Galaxy S или другие способы сделать это!Спасибо,

Ответы [ 3 ]

9 голосов
/ 21 ноября 2012

Я знаю, что люди дали вам лучшие способы сделать яркость устройства. Не отрицая этого, но просто из любопытства, если вы хотите найти соответствующие файлы, где хранится яркость, вот они:

  • Nexus S: /sys/devices/platform/s3cfb/spi_gpio.3/spi3.0/backlight/s5p_bl/brightness
  • Галактика Y: /sys/devices/platform/aat1401-backlight.0/backlight/aat1401-backlight/brightness
  • Galaxy S: /sys/devices/platform/omap2_mcspi.1/spi1.0/backlight/omap_bl/actual_brightness

На Galaxy S также, кажется, есть файл с именем brightness, но actual_brightness кажется более точным. Он захватывает экран устройства, становящийся наполовину ярким после определенного времени простоя.

Короче говоря, на устройствах Samsung нет стандартного пути / файла. Конечно, это не лучший способ получить яркость, но если вам интересно, выше приведены некоторые файлы.

Лучший способ выяснить это с рабочего стола, запустите

adb shell ls -R /sys/devices >files.txt

, а затем

grep -i  bright files.txt

: -)

6 голосов
/ 19 апреля 2016

Самый простой способ найти яркость экрана, используя adb:

adb shell settings get system screen_brightness
4 голосов
/ 10 июня 2011
...