我需要通过我的应用更改Android屏幕亮度。 我见过的所有现有答案都与窗口屏幕亮度有关,但我需要设备亮度。
答案 0 :(得分:1)
要更改亮度的设备设置,您需要执行以下操作:
android.provider.Settings.System.putInt(getContentResolver(),
android.provider.Settings.System.SCREEN_BRIGHTNESS, brightness);
其中brightness
必须是0到255之间的整数。但是,请记住,将屏幕亮度设置为0将关闭屏幕并将其重新打开并不容易。因此,请始终检查亮度是否> 0(我个人将最小亮度设置为10)。
如果您还有其他问题,请与我们联系。
答案 1 :(得分:0)
几秒钟的谷歌搜索让我知道了这一点:Update Display Brightness on Android after changing it programmatically。它看起来像你想要的。
答案 2 :(得分:0)
根据我的经验
1st method.
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.screenBrightness = 75 / 100.0f;
getWindow().setAttributes(lp);
其中亮度值非常符合1.0f.100f的最大亮度。
上述代码将增加当前窗口的亮度。 如果我们想增加整个Android设备的亮度,这段代码是不够的, 因为我们需要使用
2nd method.
android.provider.Settings.System.putInt(getContentResolver(),
android.provider.Settings.System.SCREEN_BRIGHTNESS, 192);
其中192是亮度值,从1到255。 使用第二种方法的主要问题是它会在Android设备中以增加的形式显示亮度,但实际上它将无法增加Android设备的亮度。这是因为它需要一些刷新。
这就是为什么我一起使用这两个代码找出解决方案的原因。
if(arg2==1)
{
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.screenBrightness = 75 / 100.0f;
getWindow().setAttributes(lp);
android.provider.Settings.System.putInt(getContentResolver(),
android.provider.Settings.System.SCREEN_BRIGHTNESS, 192);
}
它适合我