如何在React-native中实现人脸识别认证?

时间:2019-03-20 10:01:04

标签: react-native authentication

我是本机反应的新手。我想在我的应用中实现面部识别和触摸识别。在我的应用中,触摸ID正在运行。但是脸部ID无法正常工作。我的面部ID身份验证代码如下:

 callFinger(isLogin) {
    TouchID.isSupported()
        .then(biometryType => {

            if (biometryType === 'TouchID') {

                TouchID.authenticate('Unlock with your fingerprint').then(success => {
                    if (success) {
                        if (isLogin == "true")
                            this.callRedirect(isLogin);
                        else
                            this.callLoginApi();
                    }
                }
                );
            } else if (biometryType === 'FaceID') {
                 TouchID.authenticate('Unlock with your FaceID').then(success => {
                    if (success) {
                        if (isLogin == "true")
                            this.callRedirect(isLogin);
                        else
                            this.callLoginApi();
                    }
                }
                );
            } else if (biometryType === true) {

                TouchID.authenticate('Unlock with your fingerprint').then(success => {
                    if (success) {
                        if (isLogin == "true")
                            this.callRedirect(isLogin);
                        else
                            this.callLoginApi();
                    }
                }
                );
            }
            else {
                this.callRedirect(isLogin);
            }
        })
        .catch(error => {
            this.callRedirect(isLogin);
        })

}

我正在使用此链接来获取触摸ID,对我来说很有效。但在此链接中,面部识别码无效。 https://www.npmjs.com/package/react-native-touch-id

我还引用了以下链接,但它也无法正常工作。 https://github.com/naoufal/react-native-touch-id/blob/master/examples/BiometricAuthExample/App.js

1 个答案:

答案 0 :(得分:0)

您可能已经有了解决方案,但是如果其他人也面临同样的问题...

尝试将这对密钥/字符串添加到您的ios/<YourPoject>/info.plist

<key>NSFaceIDUsageDescription</key>
<string>Enabling Face ID allows you quick and secure access to your account.</string>