出现右侧命令时,我关闭了屏幕。
关闭屏幕:
WindowManager.LayoutParams params = getWindow().getAttributes();
params.flags |= LayoutParams.FLAG_KEEP_SCREEN_ON;
params.screenBrightness = 0.0f;
getWindow().setAttributes(params);
这很好用。至少看起来像那样。
但是当命令打开屏幕时,它不起作用。这是开启的代码:
开启屏幕:
WindowManager.LayoutParams on = getWindow().getAttributes();
on.screenBrightness = 0.7f;
getWindow().setAttributes(on);
亮度不起来。我不知道为什么。
但是当我将TURN OFF SCREEN的screenBrightness改为params.screenBrightness = 0.1f时;然后屏幕的亮度不是很黑,但非常低。如果它是0.1f,我可以调用BrightnessUp功能,屏幕亮度也在正确的水平。
总而言之,如果之前的亮度为0.0f,我就不能将亮度设置得更高,只有在0.1f或更高的情况下。
我也试过这个解决方案来转动屏幕:
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
screenWakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "screenWakeLock");
screenWakeLock.acquire();
清单:
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.DEVICE_POWER"/>
但这无论如何都不起作用。
所以我希望有人可以帮助我并为我解决这个问题。
答案 0 :(得分:2)
好的,我解决了我的问题。
我只是将屏幕亮度设置为TURN OFF SCREEN params.screenBrightness = 0.01f;然后一切正常。
如果它应该关闭,屏幕是黑色的,如果再打开,它会获得正确的亮度。