为帮助用户更好更快的使用插件,论坛维护了一个示例,示例中包含示例代码供您参考。
baiduFaceLive 插件概述
本插件封装了百度开放平台的人脸识别离线采集客户端SDK(活体检测),可以在客户端方便快捷的接入人脸识别功能。
插件使用攻略
使用之前须从百度开放平台申请开发者账号并完成企业认证,获取 LicenseID和 LicenseFileName。百度开发平台控制台
使用此插件之前建议先配置config.xml文件,配置完毕,需通过云端编译生效,配置方法如下:
<feature name="baiduFaceLive">
<param name="LicenseID_iOS" value="test-zhaofei-face-ios"/>
<param name="LicenseFileName_iOS" value="idl-license.face-ios"/>
<param name="LicenseID_Android" value="test-zhaofei-face-android"/>
<param name="LicenseFileName_Android" value="idl-license.face-android"/>
</feature>
**License文件打包插件包需注意事项请参考License打包插件包注意事项**,然后将制作好的授权插件包上传到自定义插件,添加到自己的App进行使用。
设置授权
setLicense({params}, callback(ret))
LicenseID_iOS:
LicenseFileName_iOS:
LicenseID_Android:
LicenseFileName_Android:
ret:
{
status: true, //布尔型;true||false
}
err:
{
code : '',
msg : ''
}
var demo = api.require('baiduFaceLive');
demo.setLicense({
LicenseID_Android: 'test-new-2020-face-android',
LicenseFileName_Android: 'idl-license.face-android',
LicenseID_iOS: 'test-new-2020-face-ios',
LicenseFileName_iOS: 'idl-license.face-ios',
}, function (ret, err) {
alert(JSON.stringify(ret) + " " + JSON.stringify(err));
});
iOS系统,Android系统
可提供的1.1.0及更高版本
初始化采集功能
initCollect({params}, callback(ret))
minFaceSize:
cropFaceWidth:
cropFaceHeight:
notFace:
occlusion:
secType:
ret:
{
status: true, //布尔型;true||false
}
err:
{
code : '',
msg : ''
}
var demo = api.require('baiduFaceLive');
demo.initCollect(function(ret, err){
api.toast({ msg : JSON.stringify(ret) +" "+JSON.stringify(err)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本
卸载采集功能
uninitCollect({params}, callback(ret))
ret:
{
status: true, //布尔型;true||false
}
err:
{
code : '',
msg : ''
}
var demo = api.require('baiduFaceLive');
demo.uninitCollect(function(ret, err){
api.toast({ msg : JSON.stringify(ret) +" "+JSON.stringify(err)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本
配置动作
setActions({params}, callback(ret))
actions:
['Eye','Mouth','HeadUp','HeadDown','HeadLeft','HeadRight']
faceActionSum:
ret:
{
status: true, //布尔型;true||false
}
err:
{
code : '',
msg : ''
}
var demo = api.require('baiduFaceLive');
demo.setActions(function(ret, err){
api.toast({ msg : JSON.stringify(ret) +" "+JSON.stringify(err)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本
配置质量等级
setQualityLevel({params}, callback(ret))
qualityLevel:
ret:
{
status: true, //布尔型;true||false
}
err:
{
code : '',
msg : ''
}
var demo = api.require('baiduFaceLive');
demo.setQualityLevel(function(ret, err){
api.toast({ msg : JSON.stringify(ret) +" "+JSON.stringify(err)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本
打开人脸识别界面
openFaceDetectView({params}, callback(ret))
rect:
{
x:0, //左上角x坐标,默认0
y:0, //左上角y坐标,默认0
w:320, //宽度,默认'auto',页面从x位置开始自动充满父页面宽度
h:480 //高度,默认'auto',页面从y位置开始自动充满父页面高度
marginLeft:0, //相对父页面左外边距的距离,默认0
marginTop:0, //相对父页面上外边距的距离,默认0
marginBottom:0, //相对父页面下外边距的距离,默认0
marginRight:0 //相对父页面右外边距的距离,默认0
}
fixedOn:
fixed:
defaultUI:
isShowRectLine:
isSound:
ret:
{
evenType : 'Tips', // Tips 提示信息|success 识别成功
message : '',//Tips 有值
data : { //base64图片 //success 有值
bestImage : '', //裁剪图片
srcImage : '', //原图
bestSecBase64 : '',//加密裁剪图片
srcSecBase64 : '',//加密原图
}
}
var demo = api.require('baiduFaceLive');
demo.openFaceDetectView(function(ret, err){
if(ret.evenType=='success'){
//由于base64数据量大,请不要用JSON.stringify(ret)调试
alert(ret.data.bestImage);
}else{
api.toast({ msg : JSON.stringify(ret) +" "+JSON.stringify(err)});
}
});
##Tips值列表
iOS | Android |
---|---|
建议略微抬头 | 未检测到人脸 |
建议略微低头 | 把脸移入框内 |
建议略微向右转头 | 手机拿近一点 |
建议略微向左转头 | 手机拿远一点 |
光线再亮些 | 建议略微抬头 |
把脸移入框内 | 建议略微低头 |
请保持不动 | 建议略微向左转头 |
左眼有遮挡 | 建议略微向右转头 |
右眼有遮挡 | 脸部有遮挡 |
鼻子有遮挡 | 光线再亮些 |
嘴巴有遮挡 | 请保持不动 |
左脸颊有遮挡 | 请正对手机 |
右脸颊有遮挡 | 检测超时 |
下颚有遮挡 | 眨眨眼 |
手机拿远一点 | 请眨眨左边眼睛 |
手机拿近一点 | 请眨眨右边眼睛 |
把脸移入框内 | 张张嘴 |
眨眨眼 | 向左缓慢转头 |
张张嘴 | 向右缓慢转头 |
向右缓慢转头 | 摇摇头 |
向左缓慢转头 | 缓慢抬头 |
缓慢抬头 | 缓慢低头 |
缓慢低头 | 非常好 |
摇摇头 | |
非常好 | |
验证失败 | |
检测超时 |
iOS系统,Android系统
可提供的1.0.0及更高版本
识别结果处理后继续人脸识别(识别界面未关闭时调用)
continueFaceDetect(callback(ret, err))
ret:
{
status: true, //布尔型;true||false
}
err:
{
code : '',
msg : ''
}
var demo = api.require('baiduFaceLive');
demo.continueFaceDetect(function(ret, err){
//api.alert({msg: JSON.stringify(ret)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本
关闭人脸识别界面
closeFaceDetectView(callback(ret, err))
ret:
{
status: true, //布尔型;true||false
}
err:
{
code : '',
msg : ''
}
var demo = api.require('baiduFaceLive');
demo.closeFaceDetectView(function(ret, err){
//api.alert({msg: JSON.stringify(ret)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本
声音开关
switchSound(callback(ret))
ret:
{
status: true, //布尔型;true||false
}
err:
{
code : '',
msg : ''
}
var demo = api.require('baiduFacePlus');
demo.switchSound(function(ret, err){
api.toast({ msg : JSON.stringify(ret)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本
设置顶部显示内容
showTopText({params}, callback(ret))
content:
ret:
{
status: true, //布尔型;true||false
}
err:
{
code : '',
msg : ''
}
var demo = api.require('baiduFacePlus');
demo.showTopText({
content: '我是自定义内容'
},function(ret, err){
api.toast({ msg : JSON.stringify(ret)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本
设置底部显示内容
showButtomText({params}, callback(ret))
content:
ret:
{
status: true, //布尔型;true||false
}
err:
{
code : '',
msg : ''
}
var demo = api.require('baiduFacePlus');
demo.showButtomText({
content: '我是自定义内容'
},function(ret, err){
api.toast({ msg : JSON.stringify(ret)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本