如何对Android屏幕亮度进行永久更改?

| 我已经使用以下代码设法更改了活动中的屏幕亮度(并扩展了整个应用):
Settings.System.putFloat(this.getContentResolver(),Settings.System.SCREEN_BRIGHTNESS, ((float)LocationService.settings.screenBrightness));

WindowManager.LayoutParams lp = getWindow().getAttributes();
float brightness = someValue;
lp.screenBrightness = brightness;
getWindow().setAttributes(lp);
但是,一旦我关闭该应用程序,亮度就会恢复到之前的设置。是否有任何方法可以使这些更改在应用程序的生命周期之外持续存在? 谢谢!     
已邀请:
        这里也许可以帮助您:
WindowManager.LayoutParams layoutParams = getWindow().getAttributes();  
layoutParams.buttonBrightness = value;
getWindow().setAttributes(layoutParams);
    
        尝试这个
Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE, Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);

int brightnessLevel = 255;
Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS, brightnessLevel);
您将需要在AndroidManifest.xml中设置WRITE_SETTINGS权限 http://android-er.blogspot.com/2011/02/change-system-screen-brightness-using.html     
        设置应用程序通过以下方式进行操作:
private static final int MINIMUM_BACKLIGHT = android.os.Power.BRIGHTNESS_DIM + 10;
private static final int MAXIMUM_BACKLIGHT = android.os.Power.BRIGHTNESS_ON;

System.putInt(getContext().getContentResolver(), Settings.System.SCREEN_BRIGHTNESS, value + MINIMUM_BACKLIGHT);
但我怀疑您必须拥有系统共享用户ID才能更改系统设置     
        在androidMainfest.xml中提供权限
<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>
并提供0到255之间的整数
//number>=0 && number<=255
//If you have passed context then you can use context.getContentResolver()
android.provider.Settings.System.putInt(cgetContentResolver(),
            android.provider.Settings.System.SCREEN_BRIGHTNESS,
            number);
    

要回复问题请先登录注册