1.由于人脸核验功能涉及到用户的敏感、隐私信息,因此调用此接口的业务方,需要满足一定的条件,申请小程序的人脸识别api。开通小程序后台的接口权限入口后,开发者可以登录mp.weixin.qq.com小程序账号,在设置-接口能力中,开通接口能力。
https://developers.weixin.qq.com/community/business/doc/000842c329c3f811b7678b8165100d
2.//活体检测,是否支持人脸识别
wx.checkIsSupportFacialRecognition({
checkAliveType: 2,
success: function(res) {
if (res.errCode === 0 || res.errMsg === "checkIsSupportFacialRecognition:ok") {
//调用人脸识别
_this.startface(_this.data.custName.replace(/(^s*)|(s*)$/g, ""), _this.data.custIdCard);//身份证名称,身份证号码
return;
}
wx.showToast('微信版本过低,暂时无法使用此功能,请升级微信最新版本')
},
fail: res => {
wx.showToast('微信版本过低,暂时无法使用此功能,请升级微信最新版本')
}
})
3.兼容版本:
读数字:android 微信6.5.4及以上版本, iOS 微信6.5.6及以上版本
屏幕闪烁:android 微信6.7.2及以上版本, iOS 微信6.7.2及以上版本
开放状态:未开放
开放范围:白名单
errCode:0,识别成功。
errMsg:'startFacialRecognitionVerify:ok'
4.示例代码
//人脸识别,请求进行基于生物识别的人脸核身
startface(name, idcard) {
wx.startFacialRecognitionVerify({
name: _this.data.custName,//身份证名称
idCardNumber: _this.data.custIdCard,//身份证号码
success: function(res) {
var verifyResult = res.verifyResult;//认证结果
//调用接口
},
checkAliveType: 2,//屏幕闪烁(人脸核验的交互方式,默认0,读数字)
fail: err => {
wx.showToast('请保持光线充足,面部正对手机,且无遮挡')
}
})
},