Touch ID:生物识别被锁定。代码=-8
Touch ID: Biometry is locked out. Code=-8
我在我的应用程序中使用 Touch id 来识别 iPhone 用户,什么时候使用 canEvaluatePolicy: LAPolicyDeviceOwnerAuthenticationWithBiometrics
来评估用户是否有资格使用 Touch id,但在多次尝试失败后,即使用户有资格使用touch id,它returns FALSE
.
这将导致应用跳过此步骤并认为此设备不支持触摸 ID。
这是我得到的错误:
Error Domain=com.apple.LocalAuthentication Code=-8 "Biometry is locked
out." UserInfo={NSLocalizedDescription=Biometry is locked out.}
好的,我想我找到了答案。希望它能帮助你。当你得到
Error Domain=com.apple.LocalAuthentication Code=-8 "Biometry is locked out." UserInfo={NSLocalizedDescription=Biometry is locked out.}
iOS 10 块访问 TouchID,可以通过在 iOS 解锁屏幕上提供密码来解锁,访问 TouchID iOS 设置并在那里提供密码或手动触发应用程序内的密码屏幕。您可以使用以下代码片段打开密码屏幕。
let context = LAContext()
context.evaluatePolicy(LAPolicy.DeviceOwnerAuthentication,
localizedReason: reason,
reply: { (success, error) in
})
当然可以先看看这个政策能不能评估
所以最后,当用户成功输入密码时,生物识别就会被解锁。在 iOS10 之前,这是由操作系统自动完成的。
您可以通过使用密码对用户进行身份验证来解锁生物识别。只需将此函数粘贴到您的项目中并在使用 Touch ID 对用户进行身份验证之前调用此函数。
如果 returns true 运行 Touch ID 身份验证,如果由于生物识别锁定而失败,它将要求用户输入 iPhone 密码以解锁生物识别。这将在应用程序内发生。
func isBiometryReady() -> Bool
{
let context : LAContext = LAContext();
var error : NSError?
context.localizedFallbackTitle = ""
context.localizedCancelTitle = "Enter Using Passcode"
if (context.canEvaluatePolicy(LAPolicy.deviceOwnerAuthenticationWithBiometrics, error: &error))
{
return true
}
if error?.code == -8
{
let reason:String = "TouchID has been locked out due to few fail attemp. Enter iPhone passcode to enable TouchID.";
context.evaluatePolicy(LAPolicy.deviceOwnerAuthentication,
localizedReason: reason,
reply: { (success, error) in
return false
})
return true
}
return false
}
我在我的应用程序中使用 Touch id 来识别 iPhone 用户,什么时候使用 canEvaluatePolicy: LAPolicyDeviceOwnerAuthenticationWithBiometrics
来评估用户是否有资格使用 Touch id,但在多次尝试失败后,即使用户有资格使用touch id,它returns FALSE
.
这将导致应用跳过此步骤并认为此设备不支持触摸 ID。
这是我得到的错误:
Error Domain=com.apple.LocalAuthentication Code=-8 "Biometry is locked out." UserInfo={NSLocalizedDescription=Biometry is locked out.}
好的,我想我找到了答案。希望它能帮助你。当你得到
Error Domain=com.apple.LocalAuthentication Code=-8 "Biometry is locked out." UserInfo={NSLocalizedDescription=Biometry is locked out.}
iOS 10 块访问 TouchID,可以通过在 iOS 解锁屏幕上提供密码来解锁,访问 TouchID iOS 设置并在那里提供密码或手动触发应用程序内的密码屏幕。您可以使用以下代码片段打开密码屏幕。
let context = LAContext()
context.evaluatePolicy(LAPolicy.DeviceOwnerAuthentication,
localizedReason: reason,
reply: { (success, error) in
})
当然可以先看看这个政策能不能评估
所以最后,当用户成功输入密码时,生物识别就会被解锁。在 iOS10 之前,这是由操作系统自动完成的。
您可以通过使用密码对用户进行身份验证来解锁生物识别。只需将此函数粘贴到您的项目中并在使用 Touch ID 对用户进行身份验证之前调用此函数。
如果 returns true 运行 Touch ID 身份验证,如果由于生物识别锁定而失败,它将要求用户输入 iPhone 密码以解锁生物识别。这将在应用程序内发生。
func isBiometryReady() -> Bool
{
let context : LAContext = LAContext();
var error : NSError?
context.localizedFallbackTitle = ""
context.localizedCancelTitle = "Enter Using Passcode"
if (context.canEvaluatePolicy(LAPolicy.deviceOwnerAuthenticationWithBiometrics, error: &error))
{
return true
}
if error?.code == -8
{
let reason:String = "TouchID has been locked out due to few fail attemp. Enter iPhone passcode to enable TouchID.";
context.evaluatePolicy(LAPolicy.deviceOwnerAuthentication,
localizedReason: reason,
reply: { (success, error) in
return false
})
return true
}
return false
}