更新记录

1.3.1(2024-04-19)

升级安卓原生SDK,优化参数和回调

1.3.0(2024-03-26)

1、升级原生SDK,优化摄像头预览

1.2.9(2024-01-06)

1.iOS 更新最新版本的SDK

查看更多

平台兼容性

Android Android CPU类型 iOS
适用版本区间:4.4 - 11.0 armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 适用版本区间:9 - 17

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


活体检测

网易易盾 提供完善的生物核验服务,利用生物信息进行活体检测、人脸比对等技术,全面、快速地核验用户身份的真实性

了解更多产品信息或体验试用,请访问 生物核验产品页

更新提醒

建议使用本地插件
最新版本 v1.2.7 对外开放接口与之前老版本有变动,使用 v1.2.7 版本请重新接入

平台支持(兼容性)

Android iOS
适用版本区间:4.4以上 适用版本区间:9以上

资源引入/集成

从 dcloud 插件市场下载对应插件放到指定目录 nativeplugins 下,也可以选择直接云端插件打包。导入插件之后一定要自定义基座方可生效,自定义基座说明请参考 https://ask.dcloud.net.cn/article/35115

项目开发配置

Android 配置

插件依赖于相机权限,6.0 及以上需要动态申请

requestPermission() {
  plus.android.requestPermissions(["android.permission.CAMERA"],
      function(result) {

      },
      function(error) {

      }
  )
}

调用示例

<template>
  <view>
    <camera_preview ref="aliveDetect" class="check-preview__camera" />
  </view>
</template>

<script>
  export default {
    onReady() {
      this.initAliveDetect();
    }
    methods: {
      initAliveDetect() {
        this.$refs.aliveDetect.init({
          'businessID': '从易盾获取业务id',
          'timeout': 30,
          'isDebug': true
        }, (e) => {
            // 回调处理
        }))
      this.$refs.aliveDetect.startDetect()
    }
  }
</script>

更多使用场景请参考 demo

SDK 方法说明

在 nvue 中引入组件

  <camera_preview
        style="width: 750rpx; height: 400rpx;"
        ref="aliveDetect"></camera_preview>

注意: 请根据自己需求设置camera_preview大小及布局等

1 初始化

初始化活体检测(方法功能描述)

代码说明:

this.$refs.aliveDetect.init({}, (result) => {
  let method = result['method'];
  let data = result['data'];
})

参数说明:

  • options 基础参数:

    参数 类型 是否必填 默认值 描述
    businessID String 从易盾获取的业务id
    timeout Number 30秒 活体检测超时时间,单位s
    isDebug Boolean 是否开启debug模式
    sensitivity Number 1 灵敏度 0:容易 1:普通 2:困难
    hosts String 域名,多个域名之间用,分隔,多用于私有化场景
  • result 回调参数说明

    method值 所处阶段 data中的字段说明
    onReady 初始化引擎 initResult:引擎初始化结果 true表现引擎初始化成功、false表示失败
    onConfig 待检测所有动作 actions:动作编号
    onChecking 检测中 currentStep:当前检测动作 0:正视前方 1:向右转头 2:向左转头 3:张嘴动作 4:眨眼动作 message:动作描述信息
    onChecked 检测完成 isPassed:是否通过 token:校验码,用于二次校验
    onError 发生异常 code:错误码
    message:
    iOS对应的错误信息:
    活体检测获取配置失败
    保持面部在框内
    环境光线过暗
    环境光线过亮
    请勿抖动手机
    活体检测获取配置信息超时
    云端检测结果请求超时
    云端检测上传图片失败
    网络未连接
    SDK内部错误
    App未获取相机权限
    未知错误
    Android对应的错误信息:
    业务id不能为空
    返回值Json解析异常
    AES解密异常
    打开相机失败
    请移动人脸到摄像头视野中间
    图像质量模糊
    环境光线过亮
    环境光线暗
    请正视摄像头视野中间并保持不动
    overTime 超时,超过设置的限制时间

2 开始活体检测验证

代码说明:

this.$refs.aliveDetect.startDetect()

3 停止活体检测

代码说明:

this.$refs.aliveDetect.stopDetect()

隐私、权限声明

1. 本插件需要申请的系统权限列表:

"<uses-permission android:name=\"android.permission.CAMERA\"/>", "<uses-permission android:name=\"android.permission.INTERNET\"/>"

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件自身不采集任何数据,插件使用的易盾活体检测sdk采集数据,具体请看易盾官网文档

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

作者未提供license.md

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问