android的KeyguardManager中isDeviceLocked和isKeyguardSecure有什么区别?

时间:2015-05-04 14:31:31

标签: android api locking lockscreen keyguard

以下摘自http://developer.android.com/reference/android/app/KeyguardManager.html

public boolean isDeviceLocked()

返回设备当前是否已锁定并需要PIN,模式或密码才能解锁。如果解锁设备当前需要PIN,模式或密码,则返回true。

public boolean isKeyguardSecure()

返回键盘锁是否需要密码才能解锁。如果keyguard是安全的,则返回true。

isDeviceLockedisKeyguardSecure之间有什么区别?

1 个答案:

答案 0 :(得分:9)

public boolean isDeviceLocked()

此方法会考虑锁屏的当前UI状态。

因此,如果设置了安全屏幕锁定,则与 isKeyguardSecure()相反,如果符合以下情况,则会返回false

  • 用户已解锁锁屏并正在使用设备
  • 智能锁定功能(设置 - >安全性 - >智能锁定)可让您无需进一步身份验证即可解锁设备

public boolean isKeyguardSecure()

此方法不会考虑锁屏的当前UI状态。

因此,如果设置了安全屏幕锁定,它将始终返回true,无论用户是否已解锁锁屏,或者智能锁允许解锁而无需进一步验证。

我无法重现ByteHamster btw报告的行为。