【发布时间】:2016-05-28 21:48:12
【问题描述】:
我正在编写一个应用程序来管理或自定义 android 设备的解锁屏幕。它按以下步骤工作:
- 用户使用电源按钮锁定屏幕。
- 用户尝试解锁屏幕,因此再次按下电源按钮
- 我的活动弹出 -- 屏幕仍处于锁定状态
- 用户回答问题,如果回答正确,屏幕解锁
我为第三步创建了一个活动,并将以下代码添加到其onCreate 方法中:
Window window = getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
window.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
window.addFlags(WindowManager.LayoutParams.FLAG_SECURE);
这完全符合我的期望。我的问题是第四步。我搜索并找到了许多解决方案,但没有一个适合我。
How to lock/unlock phone programmatically -- 这只是在锁定屏幕顶部显示活动的一种方式。它不会解锁它。
Android screen lock/ unlock programatically -- 这个解决方案不仅被弃用,而且非常不可靠。它不会解锁屏幕,而是创建另一个锁并将其解锁。因此,使用它您可以访问应用程序,但无法访问敏感设置。 (试试看!)
我尝试将我的应用程序注册为设备管理员。那也没有帮助我。我可以更改设置,但无法解锁屏幕。
【问题讨论】:
标签: android