我正在使用搜索栏编写应用程序以更改屏幕亮度,并且我在事件onProgressChanged上使用此代码
Settings.System.putInt(getApplicationContext().getContentResolver(),Settings.System.SCREEN_BRIGHTNESS,newBrightness);
但应用程序在此代码后崩溃了。我还添加了
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
到清单
有谁知道为什么?请帮帮我
提前致谢
答案 0 :(得分:0)
您也应该刷新屏幕。你的代码比较复杂。
Settings.System.putInt(this.getContentResolver(), Settings.System.SCREEN_BRIGHTNESS, 20);
WindowManager.LayoutParams layoutParams = getWindow().getAttributes();
layoutParams.screenBrightness = 0.2f;
getWindow().setAttributes(layoutParams);
startActivity(new Intent(this,RefreshScreen.class));
您还可能需要关闭自动模式:
Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE, Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);