可能重复:
如何锁定屏幕,android
我试图在我的代码中锁定手机屏幕,但它不起作用。我花了几个小时来研究它并尝试新的方法,但没有任何效果。我正在尝试将屏幕锁定在一项服务中,但首先我只是在一项活动中进行尝试。
这是我的活动:
PowerManager manager;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
manager = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = manager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "Your Tag");
wl.acquire();
}
}
这根本没有做任何事情。
注意:我确实有android.permission.WAKE_LOCK permission
我也在下面尝试过这种方法,但它什么也没做,没有强制关闭或任何东西。
manager = (PowerManager) getSystemService(Context.POWER_SERVICE);
manager.goToSleep(1000); // go to sleep in 1 second
我在下面尝试了这种方法并且它有效(在活动中):
WindowManager.LayoutParams params = getWindow().getAttributes();
params.screenBrightness = 0;
getWindow().setAttributes(params);
但是这种方法在服务中不起作用,所以我需要找到不同的方法?但是我只是没有运气。
有什么帮助吗?会很棒,谢谢,杰克