faceidLiveDetect

概述

faceidLiveDetect 封装了 faceID 开放平台的 SDK,集成了faceid 人脸识别功能;开发者需要在 FaceID 平台上进行 SDK 网络授权后可以使用,平台地址 FaceID平台。该原生插件封装了活体动作和静默活体。

兼容性

FACE++ iOS 系列SDK 支持 iOS8及以上操作系统,为了提高效果,推荐使用iPhone4S 以上机器,不包含iPhone4S。

在iOS端需勾选相机、相册、麦克风的权限,否则会导致崩溃。

原生插件使用攻略

人脸识别过程

有两种识别过程:1,无源比对,FaceID 将使用客户自己提供的照片作为比对人脸照;2,有源比对,表示最终的用户照片将与第三方权威数据照片进行比对。此外,如果没有“有源比对”的权限,会返回错误码;

识别模式一:无源比对

1,开发者调用 getBizToken 接口上传比对者的照片到旷视服务器

2,getBizToken 成功后,调用 startDetect 接口打开摄像头

2,原生插件开始通过摄像头检测活体人脸,并识别

3,原生插件识别成功后返回 data

4,开发者发送 data 给旷视服务器相关接口

5,服务器分析比对验证身份,并将本次识别结果返回

特别注意:

获取 BizToken 这一过程请放在自己服务器端进行,本原生插件 getBizToken 仅供开发测试使用。服务器端获取 BizToken 参考 FaceID 官方文档

getBizToken

获取 bizToken

注意:本接口仅供开发测试使用,正式环境请在服务器端获取bizToken,iOS仅获取人证核验token。android根据path是否有效获取相关token

getBizToken({params},callback(ret, err))

params

path:

  • 类型:字符串
  • 描述:(可选项)由客户提供的参照人脸照片的路径,要求本地路径(仅android支持,此参数有效时userName、idcardNumber无效)

type:

  • 类型:数字
  • 描述:活体类型
  • 默认值:0
  • 取值范围:
    • 0 (动作活体)
    • 1(静默活体)

userName:

  • 类型:字符串
  • 描述:姓名

idcardNumber:

  • 类型:字符串
  • 描述:身份证号码

apiKey:

  • 类型:字符串
  • 描述:从FACE++平台获取得apiKey

apiSecret:

  • 类型:字符串
  • 描述:从FACE++平台获取得apiSecret

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
   status: true,      //布尔类型;是否成功
   bizToken:''        //字符串类型;token
} 

示例代码

var faceidLiveDetect = api.require('faceidLiveDetect');
faceidLiveDetect.getBizToken(function(ret){
    if(ret){
       api.alert({
            msg: JSON.stringify(ret)
        })
    }
});

可用性

iOS 系统,Android 系统

可提供的 1.0.0 及更高版本

startDetect

开始检测,检测完成后发给服务器端验证。

startDetect({params}, callback(ret, err))

params

language:

  • 类型:字符串
  • 描述:活体类型
  • 默认值:languageCh
  • 取值范围:
    • languageCh(中文)
    • languageEn(英文)

livenessHomeBackgroundColor:

  • 类型:字符串
  • 描述:背景色(ios)

livenessHomeRingColor:

  • 类型:字符串
  • 描述:检测中圆环背景色(ios)

livenessHomeProcessBarColor:

  • 类型:字符串
  • 描述:圆环进度颜色(ios)

livenessHomePromptColor

  • 类型:字符串
  • 描述:提示文本字体颜色(ios)

livenessHomePromptSize

  • 类型:数字
  • 描述:提示文本字体大小(ios)

bizToken:

  • 类型:字符串
  • 描述:服务器端从 faceID 获取的 token

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
   data:  ,             //字符串类型    客户端完成验证后的加密数据。注:需用该data调用服务端接口进行数据验证
   messageStr: ''      //字符串类型; 信息描述
   extraOutDataDict:'' //字符串类型;保留字段(ios)
   bizTokenStr:''      // 字符串类型;bizToken
   dataFilePath:  ,    //字符串类型;验证结果加密数据文件本地路径
} 

err:

  • 类型:JSON对象
  • 内部字段:
{
   messageStr: ''      //字符串类型;
   errorCode:4200,     //数字类型 :错误码(android)
} 

示例代码

var faceidLiveDetect = api.require('faceidLiveDetect');
faceidLiveDetect.startDetect({
   language:'languageCh'
},function(ret,err){		
   if(ret) {
     api.alert({
            msg: JSON.stringify(ret)
        })
   } else {
     api.alert({
            msg: JSON.stringify(err)
        })
    }
});                                      

可用性

iOS 系统,Android 系统

可提供的 1.0.0 及更高版本

是否仍需要帮助? 请保持联络!
最后更新于 2024/04/24