我有一个更改某些系统设置的小部件,但它不会立即生效。好像我需要刷新它的系统设置。如何从即时拍摄的小部件中更改某些系统设置?
当按下我的小部件时,它会转到具有空白背景的活动以更改系统设置。其中一个更改的设置是显示亮度。这是我用来改变显示亮度的代码。一旦我更改设置,我调用完成功能退出活动,所以我不会在设置更改后卡在那里。我注意到的一件事是,如果我没有退出活动,设置确实改变了,但我被困在活动中。它当我添加class.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);
答案 0 :(得分:3)
答案 1 :(得分:1)
在SDK中看不到调整系统亮度的真正方法。您拥有的代码非常好 - 设置将在下次重启时生效,screenBrightness
设置将影响当前活动。