我试图让我的应用程序在经过 x 时间后重新启用键盘保护(使用警报管理器)。基本上,这就是我所做的:
假设我将屏幕锁定设置为在 5 分钟后启用。
- 我的应用程序启动并且我禁用了键盘保护 - 效果很好!
- 我创建了一个计时器(使用警报管理器)在 3 分钟后锁定屏幕,我在日志中看到警报在 3 分钟后响起,并且重新启用键盘保护的代码开始启动。5 分钟后屏幕熄灭,我单击电源按钮并启用键盘保护 - 效果很好!基本上,只要在屏幕打开时完成所有操作,一切都会正常工作。
现在假设我们保持与上面相同的场景,但将步骤 2 更改为:
- 和上面一样
- 我创建了一个计时器(使用警报管理器)在 10 分钟后锁定屏幕。屏幕在 5 分钟后熄灭,我仍然在日志中看到警报在 10 分钟后正确响起并重新启用键盘保护。但是,当我在那之后点击电源按钮时,我仍然可以进入应用程序而不会遇到锁定屏幕。如果我单击电源按钮或等待屏幕再次关闭,那么我将遇到锁定屏幕。
这似乎向我表明,重新启用键盘保护仅在屏幕再次亮起后才会生效,并且在屏幕关闭时您无法启用它。我错了还是有其他方法可以解决这个问题?即使代码在屏幕关闭时重新启用锁定保护,我也希望能够将用户踢回锁定屏幕。
谢谢!