我有一个小部件,可以更改一些系统设置,但它不会立即生效。似乎我需要刷新系统设置才能使用它。如何从一个小部件中更改一些系统设置?
当按下我的小部件时,它会转到一个背景为空的活动,以更改系统设置。更改的设置之一是显示亮度。这是我用来改变显示器亮度的代码。一旦我更改了设置,我就调用finish函数退出活动,这样在设置更改后我就不会被困在那里了。我注意到的一件事是,如果我不退出活动,设置确实会改变,但我被困在活动中。当我添加类this.finish();以退出设置不变的活动时。

android.provider.Settings.System.putInt(getContentResolver(),android.provider.Settings.System.SCREEN_BRIGHTNESS, brightness); // 0-255
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.screenBrightness = brightness / 255.0f;
getWindow().setAttributes(lp);

最佳答案

找到答案后,我很快就退出了活动。出于某种原因,我需要将退出时间延迟几百毫秒,以便进行更改。

09-19 08:15