Face ID認証

2020/09/26確認

 

Info.plistにPrivacy - Face ID Usage Descriptionを追加して、ValueをFace IDで認証します。にします。

Information Property Listを選択して、+を押すとリストが出てくるので、選択。Pと入力するとPから始まる項目に移動します。大文字小文字が区別されるので大文字で入力。

f:id:fedora9:20200926110048p:plain

ViewControllerにimport LocalAuthenticationを追加します。

import LocalAuthentication

 

    super.viewDidLoad()

の下に処理を追加します。

【iOS 11】LocalAuthenticationでFace IDとTouch IDの認証を実装する - Qiita

    let context = LAContext()

    var error: NSError?

    let description: String = "認証"

 

    // Touch ID・Face IDが利用できるデバイスか確認する

    if context.canEvaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, error: &error) {

        // 利用できる場合は指紋・顔認証を要求する

        context.evaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, localizedReason: description, reply: {success, evaluateError in

            if (success) {

                // 認証成功時の処理を書く

                print("認証成功")

            } else {

                // 認証失敗時の処理を書く

                print("認証失敗")

            }

        })

    } else {

        // Touch ID・Face IDが利用できない場合の処理

        let errorDescription = error?.userInfo["NSLocalizedDescription"] ?? ""

        print(errorDescription) // Biometry is not available on this device.

    }

 

実機(iPhone Xs)で実行すると、確認画面が表示され、Face IDで認証します。

print文で、認証成功、認証失敗が表示されます。