TouchIDを使用してアプリケーションを認証したい場合、認証が正常に機能しました。 TouchIDが一致しない場合、再試行のアラートが開き、そのアラートに[パスワードの入力]オプションが表示されます。ユーザーがそれを選択すると、システムのパスコード認証が表示されるはずですが、どうすればいいですか?ここでTouchIDが失敗した場合、システムのパスコード認証に転送
私のコードを共有する:
func touchIDAuthentication() {
let context = LAContext() //1
var error:NSError?
guard context.canEvaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, error: &error) else {
showAlertViewIfNoBiometricSensorHasBeenDetected()
return
}
if context.canEvaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, error: &errorPointer) {
context.evaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, localizedReason: reason, reply: { (success, error) in
if success {
DispatchQueue.main.async {
print("Authentication was successful")
}
}else {
DispatchQueue.main.async {
self.displayErrorMessage(error: error as! LAError)
print("Authentication was error")
}
}
})
}else {
self.showAlertWith(title: "Error", message: (errorPointer?.localizedDescription)!)
}
}
func displayErrorMessage(error:LAError) {
var message = ""
switch error.code {
case LAError.authenticationFailed:
message = "Authentication Failed."
break
case LAError.userCancel:
message = "User Cancelled."
break
case LAError.userFallback:
message = "Fallback authentication mechanism selected."
break
case LAError.touchIDNotEnrolled:
message = "Touch ID is not enrolled."
case LAError.passcodeNotSet:
message = "Passcode is not set on the device."
break
case LAError.systemCancel:
message = "System Cancelled."
break
default:
message = error.localizedDescription
}
self.showAlertWith(title: "Authentication Failed", message: message)
}
それは私のアプリに移動するパスコードを入力すると、この画面を表示する方法。どのようにこれが私を助けてください。ありがとうございます。
パスコードは、私のアプリにリダイレクトする方法をして正常入力した場合。 – saravanar
@ saravanarあなたはalrearyが条件 'を使ってそれを管理しました。パスコードがcorrentで、パスコードビューが自動的に解除され、ブーリアン値として 'sucess'が与えられます。これをさらにアクションに使用することができます。 – Krunal