Я хочу управлять настройками системы «автоматическая яркость», устанавливая ее ON или OFF. Я могу контролировать уровень яркости, но только если AUTO выключен. Из того, что я читал до сих пор, в настройках System.System есть SCREEN_BRIGHTNESS_MODE, но только для уровня API 8 или выше, а также не рекомендуется испортить его. Но в настоящее время у моего телефона есть Android 2.1 (API 7), и есть виджеты, которые могут управлять этим параметром (включить/отключить автоматическую яркость и установить уровень). Как это делается?Как включить/отключить автоматический режим яркости от API
1
A
ответ
2
Я решил свою проблему с помощью:
private static final String SCREEN_BRIGHTNESS_MODE = "screen_brightness_mode";
private static final int SCREEN_BRIGHTNESS_MODE_MANUAL = 0;
private static final int SCREEN_BRIGHTNESS_MODE_AUTOMATIC = 1;
Settings.System.putInt(resolver, SCREEN_BRIGHTNESS_MODE, mode);
Settings.System.putInt(resolver, Settings.System.SCREEN_BRIGHTNESS, lev);
Это работает в API версии 7 и 8, не уверен в более ранних версиях.
1
Я думаю, что это должно работать для вас:
Settings.System.putInt(resolver, Settings.System.SCREEN_BRIGHTNESS_MODE, mode);
Settings.System.putInt(resolver, Settings.System.SCREEN_BRIGHTNESS, lev);
И помните, чтобы добавить разрешение:
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
извините за n00b вопрос - но вы можете сказать мне, что параметр «режим» является ? Я пытался заставить этот код работать, назначив режим var равным 0 или 1, но не влияя ... нет компиляции или ошибок времени выполнения - просто ничего не делает ... –