react-native-touch-id, 使用本机触摸标识弹出响应本机身份验证

分享于 

8分钟阅读

GitHub

  繁體 雙語
React Native authentication with the native Touch ID popup.
  • 源代码名称:react-native-touch-id
  • 源代码网址:http://www.github.com/naoufal/react-native-touch-id
  • react-native-touch-id源代码文档
  • react-native-touch-id源代码下载
  • Git URL:
    git://www.github.com/naoufal/react-native-touch-id.git
    Git Clone代码到本地:
    git clone http://www.github.com/naoufal/react-native-touch-id
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/naoufal/react-native-touch-id
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    本机触摸标识

    react-native versionnpm versionnpm downloadsCode Climate

    本机触摸标识是一个React,用于通过生物认证方法,如在iOS和Android上的身份认证和触摸身份认证用户。

    react-native-touch-id

    文档

    安装

    npm i --save react-native-touch-id

    或者

    yarn add react-native-touch-id

    支持

    由于本机生态系统的快速变化,我们没有正式支持这个 MODULE,只是最新版本的React。 当前支持的版本在本自述文件顶部的React Native上显示。 如果是过期的,我们鼓励你提交请求请求 !

    用法

    链接库

    为了使用生物认证,你必须首先将库链接到你的项目。

    使用本地链接

    使用内置命令:

    react-native link react-native-touch-id
    使用 Cocoapods ( 仅适用于)

    在iOS上,你也可以通过更新你的podfile来链接软件包

    pod 'TouchID', :path => "#{node_modules_path}/react-native-touch-id"

    然后运行

    pod install
    使用本机链接

    关于如何在的本地文档环境中实现这一点,有很好的文档。

    平台差异

    iOS和Android在TouchID认证方面略有差异。

    通过 Android,你可以自定义弹出的标题和颜色,并通过一个颜色和标题键为 authenticate 方法提供可选的配置对象。 如果你通过配置对象,iOS的收费也不允许你更改颜色的颜色或者标题的标题。

    平台之间的错误处理也不同,iOS目前提供了更具描述性的错误代码。

    请求面 ID/触摸ID身份验证

    一旦你链接了库,你将要求它通过你的应用程序使它可以用:

    var TouchID =require('react-native-touch-id');

    或者

    importTouchIDfrom'react-native-touch-id'

    请求人脸 ID/触摸身份认证与调用一样简单:

    TouchID.authenticate('to demo this react-native component', optionalConfigObject)
    . then(success=> {
     // Success code })
    . catch(error=> {
     // Failure code });

    示例

    使用应用程序中的面 ID/触摸ID通常如下所示:

    importReactfrom"react"var TouchID =require('react-native-touch-id');//or import TouchID from 'react-native-touch-id'classYourComponentextendsReact.Component {
     _pressHandler() {
     TouchID.authenticate('to demo this react-native component', optionalConfigObject)
    . then(success=> {
     AlertIOS.alert('Authenticated Successfully');
     })
    . catch(error=> {
     AlertIOS.alert('Authentication Failed');
     });
     },
     render() {
     return (
     <View>...<TouchableHighlight onPress={this._pressHandler}><Text> Authenticate withTouchID</Text></TouchableHighlight></View> );
     }
    };

    方法

    身份验证( 原因,配置)

    尝试使用面 ID/触摸ID进行身份验证。 返回一个 Promise 对象。

    参数

    • reason - 可选的 String,它提供了请求身份验证的明确原因。

    • config 可选 optional Android Android Android一个对象,指定确认对话框中显示的标题和颜色。

    范例

    //config is optional to be passed in on AndroidconstoptionalConfigObject= {
     title:"Authentication Required",
     color:"#e00606"}TouchID.authenticate('to demo this react-native component', optionalConfigObject)
    . then(success=> {
     AlertIOS.alert('Authenticated Successfully');
     })
    . catch(error=> {
     AlertIOS.alert('Authentication Failed');
     });

    ) ( )

    验证触摸ID的支持。 返回解析为 FaceID 或者 TouchIDStringPromise

    范例

    TouchID.isSupported()
    . then(biometryType=> {
     // Success codeif (biometryType ==='FaceID') {
     console.log('FaceID is supported.');
     } else {
     console.log('TouchID is supported.');
     }
     })
    . catch(error=> {
     // Failure codeconsole.log(error);
     });

    错误

    biomentric身份验证可能失败的原因有多种。 如果失败,TouchID.authenticate 将返回一个表示原因的错误代码。

    以下是在iOS上可以按英镑返回的错误代码列表:

    代码描述
    LAErrorAuthenticationFailed身份验证未成功,因为用户未能提供有效凭据。
    LAErrorUserCancel用户取消了身份验证例如用户在对话框中点击了取消。
    LAErrorUserFallback由于用户按了后退按钮( 输入密码),身份验证被取消。
    LAErrorSystemCancel身份验证被系统取消例如,如果另一个应用程序到达前台,则验证对话框已经启用。
    LAErrorPasscodeNotSet身份验证无法启动,因为不能在设备上设置密码。
    LAErrorTouchIDNotAvailable由于设备上没有触摸标识,身份验证无法启动
    LAErrorTouchIDNotEnrolled身份验证无法启动,因为触摸ID没有注册的手指。
    RCTTouchIDUnknownError无法对未知原因进行身份验证。
    RCTTouchIDNotSupported设备不支持触摸标识。

    此外,有关错误的更多信息可以在苹果的苹果文档中找到。

    许可证

    版权所有( c ) 2015,Naoufal Kadhom

    授权使用。复制。修改和/或者分发本软件的任何目的,如上述版权通知和本权限通知。

    软件是"是"提供的,作者认为这个软件包括所有隐含的保证和适应性的保证。 任何特殊。直接。间接或者间接损坏或者损坏,无论在合同。收益或者它的他行为。


    react  NAT  auth  Native  POP  触摸  
    相关文章