如何在Android中以编程方式锁定屏幕?

15
2个回答

15

请查看这个类:com.android.internal.policy.impl.LockScreen

引用自这里:Can you lock screen from your app?

还可以检查在Android中启用和禁用锁屏的代码。(参考此处)

KeyguardManager keyguardManager = (KeyguardManager)getSystemService(Activity.KEYGUARD_SERVICE); 
KeyguardLock lock = keyguardManager.newKeyguardLock(KEYGUARD_SERVICE); 

要锁定屏幕,请使用以下方法:

lock.reenableKeyguard();

如果要禁用锁定,请使用以下方法:

lock.disableKeyguard()

1
我测试了这段代码,但它不起作用。 - Mecid
你能分享一下你尝试过的代码吗?你遇到了什么问题? - YoK
6
这段代码在SDK 8及以上版本上无法使用,建议使用Adams提出的设备策略管理器。 - Pinser
这对我没有用。 - varghesekutty

4
为了实现这个功能,您需要使用在(我认为)2.2版本中添加的设备管理API。一旦您的应用程序在设备上注册为设备管理员,您就可以使用DevicePolicyManager.lockNow()来锁定屏幕。SDK中的DeviceAdmin示例应用程序也是一个很好的参考。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接