Изменение яркости подсветки в Appwidget не отвечает мгновенно
Я создал простой Appwidget для управления яркостью экрана с помощью этого кода:
android.provider.Settings.System.putInt(context.getContentResolver(),
android.provider.Settings.System.SCREEN_BRIGHTNESS, 50);
Когда я нажимаю на виджет, яркость подсветки сразу не меняется. Но когда я блокирую и разблокирую телефон, это работает. Я прочитал Изменение яркости экрана программно (как с виджетом питания), что использование фиктивной активности даст решение. Так что я создал такую деятельность
public class Bright extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.finish();
}
}
В моем классе AppWidget я использовал намерение так:
context.startActivity(new Intent(context, Bright.class));
Но когда я нажимаю на виджет, он принудительно закрывается. Моя реализация верна для моего AppWidget?
1 ответ
Вы должны отрегулировать яркость в вашем манекене Activity
тоже с помощью getWindow().getAttributes().screenBrightness
если вы хотите, чтобы он немедленно ответил.
Что касается сбоя, вы можете опубликовать трассировку стека. Но сначала убедитесь, что вы добавили его в свой манифест.