我正在尝试在某些操作发生后打开和关闭显示器(让我们暂时担心关闭屏幕)。根据我对唤醒锁的理解,这就是我所拥有的:
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "My Tag");
当我在 stackoverflow 和其他地方阅读其他帖子时,他们似乎告诉我 PARTIAL_WAKE_LOCK 会关闭屏幕。但是,如果我阅读 SDK,它会说它只允许关闭屏幕。我认为这是不对的。
最佳答案
关闭屏幕有两种选择:
PowerManager manager = (PowerManager) getSystemService(Context.POWER_SERVICE);
// Choice 1
manager.goToSleep(int amountOfTime);
// Choice 2
PowerManager.WakeLock wl = manager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "Your Tag");
wl.acquire();
wl.release();
您可能也需要此权限:
<uses-permission android:name="android.permission.WAKE_LOCK" />
更新:
试试这个方法;一旦光线足够低,android就会关闭屏幕。
WindowManager.LayoutParams params = getWindow().getAttributes();
params.flags |= LayoutParams.FLAG_KEEP_SCREEN_ON;
params.screenBrightness = 0;
getWindow().setAttributes(params);
关于android - 在 Android 上关闭屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6756768/