我使用FLAG_DISMISS_KEYGUARD来禁用keygaurd。只有当我的应用程序在前台时才能工作。但是android记录了系统
相反,可以使用FLAG_DISMISS_KEYGUARD和/或FLAG_SHOW_WHEN_LOCKED;这允许您在应用程序从前台移动时无缝地隐藏密钥保护,并且不需要请求任何特殊权限。
这在我的申请中没有发生。那么,如何使用上面的标志,以便当我的应用程序在前台移动时,我的应用程序应该锁定屏幕?
有人有主意吗?
发布于 2012-05-09 21:07:06
来自克格尔德
窗口标志:当设置窗口时,该窗口将导致密钥保护被解除,除非它不是一个安全的锁键保护。因为安全并不需要这样的密钥保护,所以如果用户导航到另一个窗口(与FLAG_SHOW_WHEN_LOCKED不同,后者只暂时隐藏安全和非安全的密钥保护,但确保当用户移动到另一个没有隐藏它们的UI时,它们就不会再次出现)。如果密钥保护当前处于活动状态,并且是安全的(需要解锁模式),则除非设置了FLAG_SHOW_WHEN_LOCKED,否则用户在查看此窗口之前仍然需要确认它。
在您的情况下,您只想使用FLAG_SHOW_WHEN_LOCKED,而不想使用FLAG_DISMISS_KEYGUARD。
发布于 2022-03-30 12:04:14
final Window win= getWindow();
win.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED | WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
win.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);https://stackoverflow.com/questions/9292605
复制相似问题