xinyanFaceCheck

立即使用

论坛示例

为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码、知识点讲解、注意事项等,供您参考。

概述

xinyanFaceCheck是新颜提供的在用户姓名+身份证认证一致的情况下进行活体检测,自动判断画面中的人脸是否为真实人脸,活体检测成功后将活体检测抓取的照片与公安网返回的照片进行比对,输出匹配度,有效防止假冒欺诈。

运行环境

编译时候的固件版本安卓要求4.1.2以上,IOS要求8.0以上

在集成此模块之前需先配置config.xml文件。在config里添加如下字段:

  • 名称:xinyanFaceCheck
  • 参数:memberId、terminalId、license
  • 配置示例:

  <feature name="xinyanFaceCheck">
    <param name="memberId" value="**************" />
    <param name="terminalId" value="**************" />
    <param name="license" value="**************" />
  </feature>
  • 字段描述:

memberId:商户号,开通SDK后,新颜提供给商户的唯一编号

terminalId:终端号,开通SDK后,新颜提供给商户的AES终端编号,查看方式:SDK:开放平台->用户中心->信息管理->安全证书管理->密钥类型为AES的终端号 或者 API:开放平台->用户中心->信息管理->安全证书管理->密钥类型为RSA的终端号

license:商户的license,license和bundle ID、商户号、终端号绑定唯一,请提前找新颜技术支持申请

模块接口

configuration

配置方法

configuration({params})

params

playSound:

  • 类型:布尔类型
  • 描述:是否播放声音
  • 说明:字段非必填,不填默认true

collectionDeviceInfo:

  • 类型:布尔类型
  • 描述:是否收集设备指纹
  • 说明:字段非必填,不填默认true

showInputView:

  • 类型:布尔类型
  • 描述:是否弹出输入界面
  • 说明:字段非必填,不填默认true

inputEditing:

  • 类型:布尔类型
  • 描述:输入界面是否可编辑
  • 说明:字段非必填,不填默认true

backUrl:

  • 类型:字符串类型
  • 描述:商户后台回调地址
  • 说明:字段非必填,不填默认空值

actionType:

  • 类型:int类型
  • 描述:活体检测的动作类型, 0:眨眼+1个随机动作 1: 眨眼+2个随机动作 2: 眨眼+3个随机动作
  • 说明:字段非必填,不填默认0

示例代码

var demo = api.require("xinyanFaceCheck");
// 配置
demo.configuration({
                   playSound : true,
                   collectionDeviceInfo : true,
                   showInputView : true,
                   inputEditing : true,
                   backUrl : "",
                   actionType: 1
                   });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

startFaceCheck

开始人像比对

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

params

transId:

  • 类型:字符串
  • 描述:商户订单号,是商户对这一笔交易的唯一编码,最长允许64位
  • 说明:字段必填,不填会返回错误信息msg

idName:

  • 类型:字符串
  • 描述:姓名
  • 说明:字段非必填,不填默认空值

idNo:

  • 类型:字符串
  • 描述:身份证号
  • 说明:字段非必填,不填默认空值

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 字段说明:

      success // 是否成功
      img // 人脸图片
      idName // 姓名
      idNo // 身份照号
      transId // 商户订单号
      tradeNo // 业务口水号
      fee // 是否收费
      score // 评分分数
      level1 // 千分之一阈值
      level2 // 万分之一阈值
      errorMsg // 返回错误信息
      errorCode // 返回错误码
      step // 认证流程阶段
    

调用示例代码

var demo = api.require("xinyanFaceCheck");
//开启身份证识别
demo.startFaceCheck({
                    transId : '***',
                    idName  :'***',
                    idNo: '***'
                    },function(ret, err){
                    });

响应码

编码 描述
00000 信息一致,认证成功

验证错误

编码 描述
C0000 用户取消
C0001 活体检测失败
C0002 初始化参数错误
C0003 识别失败,请重试
C0006 初始化参数错误,商户号不能为空!
C0007 初始化参数错误,终端号不能为空!
C0008 初始化参数错误,license不能为空!
C0009 初始化参数错误,订单号不能为空!
C0010 初始化参数错误,身份证号码有误!
C0011 初始化参数错误,姓名有误!
C1001 模型文件不存在
C1002 模型文件不合法
C1015 网络连接超时,请稍后重试
C1019 处理异常
C2001 活体内部发生错误
C2002 用户手动取消扫描
C2003 视频翻拍攻击
C2004 面具攻击
C2005 高清照片
C2006 软件模拟攻击
C9998 设备指纹依赖库未导入或版本不匹配
C9999 请允许接受协议

服务端错误码

编码 描述
S0001 系统繁忙,请稍后再试
S0002 认证信息不一致
S0003 认证信息不存在
S0004 照片对比不一致
S0005 证件照不存在
S0006 人脸特征提取失败
S0007 认证异常
S0008 网络异常,请稍后重试
S0009 其它异常
S1000 请求参数有误(具体以响应参数错误为准)
S1001 请求订单不存在或已过期,请重新发起交易
S1003 订单不能重复提交
S1004 请求订单创建失败
S1005 请求报文解析失败
S1011 包名错误
S1015 未找到卡bin信息
S1016 暂不支持该银行卡校验
S1017 银行卡信息已修改,请重新发起交易
S2000 商户不存在
S2001 商户状态异常
S2002 商户终端信息不存在
S2003 商户终端信息状态异常
S2004 商户暂不支持该产品
S2005 商户暂不支持该功能
S2006 商户余额不足
S3001 暂不支持该产品
S3002 操作频繁,请稍后再试
S3003 报文验签不通过
S4001 创建渠道订单失败
S4002 请求获取密钥服务失败