更新记录

2.0.5(2022-06-09)

1.优化识别流程,识别更迅速 2.提升安全性

2.0.4(2022-04-22)

1.优化人脸体验流程,识别更为迅速 2.增加识别安全防护,识别更为安全

2.0.3(2022-04-15)

1.优化刷脸流程,提升刷脸体验 2.加强安全防护,数据更为安全

查看更多

平台兼容性

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

原生插件通用使用流程:

  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原生插件配置”->”云端插件“列表中删除该插件重新选择


需要说明

如果您单独接入人脸插件,为了保证程序正常运行,还需依赖Normal插件

Normal为人脸服务提供了网络请求与工具支持(如下图,只需要依赖即可,不需要您调用normal的接口)。

接入人脸插件

1 简介

通过活体检测鉴别真人/假人、人脸比对判断本人/非本人;支持活体+比对同时调用或分开调用。支持身份信息或比对源比对。

动作活体

用户通过配合屏幕提示进行摇头、眨眼、张嘴等动作,活体检测服务通过姿态检测、纹理分析等判断当前识别的用户是否为真实的人

光线活体

用户通过正脸对准屏幕框内,屏幕发出多种光线颜色交替变化,活体检测服务通过3D立体成像、纹理分析等判断当前识别的用户是否为真实的人。

详细参数及更多介绍参考: 参考文档

2 接口

2.1刷脸入口

WX_EXPORT_METHOD(@selector(startWbFaceVerifyService:callback:))

调用示例:

const face = uni.requireNativePlugin('DC-WBFaceService');
face.startWbFaceVerifyService({
  userId: "test_user_1",
  nonce : "xxxxxx",
  sign : "xxxxxx",
  appId : "xxxxxx",
  orderNo : "xxxxxx",
  apiVersion : "1.0.0",
  licence : "xxxxxx",
  compareType:"0",
  faceId: "xxxx",
  sdkConfig: {
    //和iOS共有的配置参数
    showSuccessPage: false, //是否展示成功页面,默认不展示
    showFailurePage: false, //是否展示失败页面,默认不展示
    recordVideo: false, //是否录制视频,默认不录制
    checkVideo:false,//是否检查视频大小
    playVoice: false, //是否播放语音提示,默认不播放
    theme: '1', //sdk皮肤设置,0黑色,1白色
    customerTipsLoc:'0',//自定义提示的位置,0在预览框下面,1在预览框上面
    customerTipsInLive:'',//检测时的自定义提示语
    customerTipsInUpload:'',//上传时的自定义提示语
    customerLongTip:'',//自定义长提示语
    //android独有的配置参数
    isEnableLog: true, //是否打开刷脸native日志,请release版本关闭!!!
    //iOS独有的配置参数
    windowLevel: '1', //sdk中拉起人脸活体识别界面中使用UIWindow时的windowLevel配置
    manualCookie: true ,//是否由SDK内部处理sdk网络请求的cookie
    useWindowSecene: false,
  }
}, result => {
  console.log("【uni log】face SDK callback ================> result.");
  console.log(result);
});

其中,startWbFaceVerifyService 后面传入调起 SDK 的参数,result 后面是插件的回调结果。

详细参数及更多介绍参考: 参考文档

2.2 插件回调接口

回调信息以 json 格式返回给 uni-app,如上 2.2 节所说,通过 scene 字段来对应登录失败返回人脸认证结果两个回调方法:

  • wb_face_callback_login_failure
  • wb_face_callback_verify_result

和 OCR 插件一样,通过 scene 获取具体场景之后,在 res 字段里面读取相应的业务信息,res 是可选的。 刷脸成功样例:

{
    "scene":"wb_face_callback_verify_result",
    "res":
    {
        "liveRate":"99",
        "orderNo":"fIABR8jeM",
        "sign":"0F2992AE7ADF69155FF117005BDB3D289A7B3969",
        "similarity":"100.0",
        "success":true,
        "userImageString":""
    }
}

刷脸失败样例:

{   "scene":"wb_face_callback_verify_result",
    "res":
    {
        "orderNo":"fIABR8jeM",
        "success":false,
        "error":
        {
            "code":"41000",
            "desc":"用户取消",
            "domain":"WBFaceErrorDomainNativeProcess",
            "reason":"左上角返回键:用户授权中取消"
        }
    }
}

更多服务

我们除了提供人脸识别服务,还提供OCR服务。

OCR插件详细参数及更多介绍参考:OCR插件接入

同时接入OCR插件及人脸插件

同时接入ocr与人脸插件,不需要再依赖normal插件,只需要ocr和face即可。

同时接入OCR插件及人脸插件

隐私、权限声明

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

"NSPhotoLibraryUsageDescription", "NSPhotoLibraryAddUsageDescription", "NSCameraUsageDescription" "android.permission.INTERNET", "android.permission.WAKE_LOCK", "android.permission.ACCESS_WIFI_STATE", "android.permission.ACCESS_NETWORK_STATE", "android.permission.CAMERA"

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

采集人脸数据,用于人脸识别

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

许可协议

作者未提供license.md

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