天天看点

android 自定义锁屏api,Android锁屏小部件

锁屏互动很难。 Android允许使用两个窗口标志(FLAG_SHOW_WHEN_LOCKED和FLAG_DISMISS_KEYGUARD)进行基本操作。 FLAG_SHOW_WHEN_LOCKED的工作原理非常一致,即使启用了安全性,它也会显示在锁定屏幕的顶部(不会绕过安全性,您无法切换到另一个非FLAG_SHOW_WHEN_LOCKED窗口)。

如果您只是在做一些临时的事情,例如在播放音乐或类似音乐时,您可能会没事。 如果您尝试创建自定义锁屏,则在所有不同的android平台上都会有很多异常的交互。 (“帮助!如果不重新启动HTC手机,我将无法关闭闹钟”)。

getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);

getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);

[http://developer.android.com/reference/android/view/WindowManager.LayoutParams.html]

FLAG_SHOW_WHEN_LOCKED

窗口标志:特殊标志,可让您在屏幕显示时显示窗口  锁定。

FLAG_DISMISS_KEYGUARD

窗口标志:   设置窗口时,将使键盘锁处于   仅在不安全的情况下解雇   锁定键盘锁。 因为这样的键盘锁   不需要安全性,它将   如果用户导航,则永远不会再出现   到另一个窗口(与   FLAG_SHOW_WHEN_LOCKED,只会   暂时隐藏安全和   非安全的键盘保护程序,但要确保他们   当用户移至时重新出现   另一个不会隐藏它们的UI)。 如果   键盘锁当前处于活动状态,并且   是安全的(需要解锁图案)   比用户仍然需要   在看到此窗口之前先进行确认,   除非FLAG_SHOW_WHEN_LOCKED也有   被设置。       常数值:4194304(0x00400000)