Как проверить, что Face ID отключен для моего приложения на странице настроек - PullRequest
0 голосов
/ 16 ноября 2018

enter image description here

Как проверить, включен ли идентификатор лица на странице настроек?Я проверил в LAContext тип ошибки.Код возврата = -6 «Пользователь запретил использование биометрии для этого приложения.»

Но устройство не поддерживает биометрическую аутентификацию, также получая тот же код ошибки.(kLAErrorTouchIDNotAvailable -6)

Есть ли способ найти включенный / отключенный идентификатор лица в настройках?

1 Ответ

0 голосов
/ 16 ноября 2018

сначала добавьте метод для ваших пользователей, чтобы включить Faceid / Touch ID с использованием локальной аутентификации. добавление этого метода позволит пользователям включать и отключать биометрический идентификатор в настройках. Вы можете использовать любой метод, который вам нужен, кнопку, контроллер сегмента или представление, и, используя подсказку, вы попросите у пользователя разрешение включить биометрический идентификатор. Этот код может помочь:

let context = LAContext()
var error: NSError?

if context.canEvaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, error: &error) {
    let reason = "Enable FaceID!"

    context.evaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, localizedReason: reason) {
        [unowned self] (success, authenticationError) in

        DispatchQueue.main.async {
            if success {
                self.unlockSecretMessage()
            } else {
                // error
            }
        }
    }
} else {
    // no biometry
}
...