angenstern

使用插件指纹模板:

https://ext.dcloud.net.cn/plugin?id=358

Fingerprint模块管理指纹识别

要使用指纹识别功能需要具备条件:

  • 确认当前设备环境是否支持指纹识别,
  • 当前设备是否设置密码锁屏,
  • 当前设备是否已经录入指纹。

(Android平台6.0及以上系统支持,只识别标准Android的指纹API,仅适配Google官方指纹识别的标准接口的设备)

以上条件都要满足才可以使用识别功能,识别功能,指的是与手机中已录入的指纹进行比对检测,也就是说,只要与手机中录入任意指纹比对成功,便可进入成功回调。

首先需要获取得到权限:

在 manifest.json文件中配置

因为目前市场上还是有很多设备不支持指纹,所以要先使用 plus.fingerprint.isSupport()  方法判断(以下三个方法均返回值为Boolean类型)

// #ifdef APP-PLUS
if (!plus.fingerprint.isSupport()) {
   plus.nativeUI.toast(\'此设备不支持指纹识别\');
   console.log(\'此设备不支持指纹识别\')
}
// #endif

再使用   plus.fingerprint.isKeyguardSecure()  判断是否开启密码锁屏

// #ifdef APP-PLUS
if (!plus.fingerprint.isKeyguardSecure()) {
   plus.nativeUI.toast(\'此设备未设置密码锁屏\');
   console.log(\'此设备未设置密码锁屏\')
}
// #endif

再然后使用   plus.fingerprint.isEnrolledFingerprints()  判断是否录入指纹

// #ifdef APP-PLUS
if (!plus.fingerprint.isEnrolledFingerprints()) {
   plus.nativeUI.toast(\'此设备未录入指纹\');
   console.log(\'此设备未录入指纹\')
}
// #endif

因项目需要,这里我将指纹识别封装为一个方法

fingerprint: function() {
    // #ifdef APP-PLUS
    plus.fingerprint.authenticate(function() {
        console.log(\'匹配成功\');
    }, function(e) {
        switch (e.code) {
            case e.AUTHENTICATE_MISMATCH:
                plus.nativeUI.toast(\'指纹匹配失败,请重新输入\');
                break;
            case e.AUTHENTICATE_OVERLIMIT:
                plus.nativeUI.closeWaiting(); //兼容Android平台关闭等待框
                plus.nativeUI.toast(\'指纹识别失败次数超出限制,请使用其它方式进行认证\');
                break;
            case e.CANCEL:
                plus.nativeUI.toast(\'已取消识别\');
                break;
            default:
                plus.nativeUI.closeWaiting(); //兼容Android平台关闭等待框
                plus.nativeUI.toast(\'指纹识别失败,请重试\');
                break;
        }
    });
    // #endif
},

注:回调里this指向发生改变,可在回调里使用其他方法

分类:

技术点:

相关文章:

  • 2021-12-31
  • 2021-07-29
  • 2021-10-11
  • 2022-02-20
  • 2022-12-23
  • 2022-01-01
  • 2021-11-15
  • 2021-11-17
猜你喜欢
  • 2021-07-25
  • 2021-05-30
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-31
  • 2021-11-19
相关资源
相似解决方案