在PARTIAL_WAKE_LOCK上关闭/打开屏幕

时间:2014-08-05 19:18:48

标签: android powermanager

我正在使用此代码进入PARTIAL_WAKE_LOCK模式:

PowerManager pm = PowerManager.getSystemService(Context.POWER_SERVICE);
screenWakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,
                            "screenWakeLock");
pm.acquire();

但我没有成功关闭屏幕并在需要时打开,我读了几十个例子而没有成功。

我无法使用需要权限DEVICE_POWER的代码,例如goToSleep()和wakeUp()。

我的目标是在屏幕上开启1秒钟并关闭它10秒钟,然后重新开始。

谢谢大家。

1 个答案:

答案 0 :(得分:-1)

使用PowerManager需要DEVICE_POWER权限,该权限仅适用于使用相同签名签名的应用程序对固件进行签名。这就是为什么你不能使用goToSleep()和wakeUp()。

此代码可以让我打开/关闭屏幕:

//Turn off - brighness to 0;            
WindowManager.LayoutParams params = getWindow().getAttributes();
params.flags |= LayoutParams.FLAG_KEEP_SCREEN_ON;
params.screenBrightness = 0;
getWindow().setAttributes(params);

要打开,只需将亮度更改为> 0;