touchID

来自于:官方立即使用

isValid cancelVerify verify

概述

touchID封装了iphone5s以后版本的手机特有的指纹识别功能,调用此模块可实现用户指纹输入验证登陆app 。使用本模块需要支持指纹识别的手机和iOS8.0以上的操作系统,Android使用本模块需要支持指纹识别硬件的手机和Android 6.0 及以上;

图片说明

iOS端云编译是配置Face ID

在苹果某些机型上没有 Touch ID,取而代之的是 Face ID,使用 Face ID 需要在云编译时勾选 Face ID,填写提示语(最好不要少于12字符)申请访问 Face ID 权限。

Android 端注意事项:

(1)Android使用本模块需要支持指纹识别的硬件和Android 6.0 及以上

(2)你的设备必须是使用屏幕锁保护的,这个屏幕锁可以是password,PIN或者图案都行

(3)用户必须首先在setting中注册至少一个指纹才行,否则是不能使用的

(4)指纹识别的失败次数因手机厂商不同可能会不同,当返回失败次数过多,请稍后在尝试时,一段时间是不可以进行指纹识别.

isValid

当前设备是否支持指纹识别功能

isValid()

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: //布尔类型;是否支持,true|false
  3. code: //数字类型:Android在status为false时返回此字段:
  4. 取值如下: 1:手机版本不是6.0及以上版本手机不能使用
  5. 2:没有指纹识别权限;
  6. 3:手机硬件不支持指纹识别
  7. 4:没有开启屏幕锁功能请先在手机设置中进行开启
  8. 5:普通app要想使用指纹识别功能的话,用户必须首先在手机setting中注册至少一个指纹才行,
  9. 否则是不能使用的。所以这里我们需要检查当前系统中是不是已经有注册的指纹信息了
  10. }

示例代码

  1. var touchID = api.require('touchID');
  2. touchID.isValid(function(ret) {
  3. if (ret.status) {
  4. api.alert({ msg: "支持指纹识别功能!" });
  5. } else {
  6. api.alert({ msg: "不支持指纹识别功能!" });
  7. }
  8. });

可用性

iOS8 及以上系统Android 适用于6.0及以上系统且硬件支持

可提供的1.0.0及更高版本

verify

弹出验证界面,验证用户指纹(android无UI界面)

verify({params},callback())

params

title:(Android无需此字段)

  • 类型:字符串
  • 描述:(可选项)验证弹框的标题
  • 默认值:验证指纹密码

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: false, //布尔类型;是否验证通过,true|false
  3. errorCode: , //数字类型;错误码
  4. msg:, //字符串类型;错误信息
  5. code: //(iOS端本参数废弃,推荐使用errorCode)数字类型;返回验证未通过信息,取值范围如下:
  6. 0 //用户选择手动输入(ios)
  7. 1 //用户取消验证
  8. 2 //验证三次失败
  9. 3 //(ios)多次验证失败,(android)多次验证失败 ,请稍后重试,
  10. 4 //验证失败,未知错误
  11. 5 //用户未开启指纹验证设备
  12. }

示例代码

  1. var touchID = api.require('touchID');
  2. touchID.verify({
  3. title: '验证指纹'
  4. }, function(ret) {
  5. if (ret.status) {
  6. api.alert({ msg: "验证通过" });
  7. } else {
  8. if (ret.code == 0) {
  9. api.alert({ msg: "用户选择手动输入" });
  10. } else if (ret.code == 1) {
  11. api.alert({ msg: "用户取消验证" });
  12. } else if (ret.code == 2) {
  13. api.alert({ msg: "验证三次失败" });
  14. } else if (ret.code == 3) {
  15. api.alert({ msg: "多次验证失败请锁定手机" });
  16. } else {
  17. api.alert({ msg: "验证失败,未知错误" });
  18. }
  19. }
  20. });

可用性

iOS8及以上系统,Android6.0 及以上系统且硬件支持

可提供的1.0.0及更高版本

cancelVerify

取消认证

cancelVerify()

示例代码

  1. var touchID = api.require('touchID');
  2. touchID.cancelVerify();

可用性

Android6.0 及以上系统且硬件支持

可提供的1.0.0及更高版本