更新记录

2.44(2026-04-18)

修改最新 iPhone 默认框子大小的问题

2.43(2026-04-13)

修复 android 横屏无法选择的问题 统一android 和 ios 的调用

2.41(2025-11-21)

进行修复无法初始化问题

查看更多

平台兼容性

Android Android CPU类型 iOS
适用版本区间:4.4 - 16.0 armeabi-v7a:支持,arm64-v8a:支持,x86:未测试 适用版本区间:11 - 18

原生插件通用使用流程:

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


百度人脸采集插件 2.0 (PP-BaiduFaceV2)

基于百度SDK 4.1,支持 Android + iOS,提供人脸采集、活体检测、离线激活、权限管理等完整能力。


快速开始

1. 授权文件

从百度人脸实名认证控制台申请 License,放到插件目录:

平台 文件路径
Android nativeplugins/PP-BaiduFaceV2/android/assets/idl-license.face-android
iOS nativeplugins/PP-BaiduFaceV2/ios/idl-license.face-ios

2. 证书 MD5

环境 MD5
HBuilderX 3.1.10+ 公共测试证书 06:83:8C:C8:40:09:3B:9D:46:89:FC:41:9B:A1:A3:F3
HBuilderX 3.1.10 之前公共测试证书 F9:F6:C8:1F:DB:AB:50:14:7D:6F:2C:4F:CE:E6:0A:A5
自有证书 百度注册时填写自己证书的 MD5

公共测试证书下载:https://ask.dcloud.net.cn/article/36522

3. 对接指南

  • 详细步骤
  • 自定义基座请使用百度注册时填写的包名及签名
  • 联系作者 QQ: 37894663

API 参考

所有方法均支持 Android + iOS,注意导入插件请真机调试

检查权限

const PPFace = uni.requireNativePlugin('PP-BaiduFaceV2');
PPFace.checkRequestPermissions({}, res => {
    // res.code  200=通过, 201=拒绝
});

初始化

PPFace.init({
    androidLicenseFileName: 'idl-license.face-android',
    androidLicenseId: 'xxx-face-android',
    iosLicenseFileName: 'idl-license.face-ios',
    iosLicenseId: 'xxx-face-ios',
}, res => {
    // res.code  200=成功
});

初始化错误码(关注 local auth failed 后的数字):

错误码 说明 错误码 说明
0 成功 8 包名校验错误
1 license未初始化 9 过期时间不正确
2 数据解密失败 10 功能未授权
3 数据格式错误 11 授权已过期
4 license-key校验错误 12 本地文件读取失败
5 算法ID校验错误 13 远程数据拉取失败
6 MD5校验错误 14 本地时间校验错误
7 设备ID校验错误 0xff 其他错误

离线模式(仅Android,ios 默认应该就是离线)

默认在线认证。如需离线激活,在 init 前调用:

PPFace.setOfflineMode(true);
PPFace.init({ ... }, res => {});

活体检测 + 采集

PPFace.faceliveness({
    livenessList: ["Eye","Mouth","HeadUp","HeadDown","HeadLeft","HeadRight"],
    isLivenessRandom: true,     // 动作随机,默认 false
    isEnableSound: true,        // 语音播报,默认 true
    isBack: false,              // 后置摄像头,默认 false
    debug: false,               // Debug模式,默认 false
    cameraRatio: 0.75,          // 相机预览比例,默认 0.75
    circleRatio: 0.33,          // 镂空圆比例,默认 0.33
    cameraRatioL: 0.75,         // 横屏相机预览比例
    circleRatioL: 0.33,         // 横屏镂空圆比例
    // 定制设备参数,普通手机无需传
    baiduRotation: -1,          // 百度SDK旋转角度 -1=自动
    previewRotation: -1,        // 预览旋转角度 -1=自动
    captureRotation: -1,        // 成像旋转角度 -1=自动
    cameraId: -1,               // 摄像头编号 -1=自动
    circleOffsetX: 0,           // 遮罩圆X偏移 (-50~50)
    circleOffsetY: 0,           // 遮罩圆Y偏移 (-50~50)
    detectAreas: [15, 20, 70, 50], // 采集区域 [x,y,w,h] 百分比
}, res => {
    // res.code           200=成功, 201=超时, 202=取消
    // res.base64Image     全景图 base64
    // res.base64ImageCrop 裁剪图 base64
});

人脸采集(无活体)

PPFace.recycler({
    isBack: false,
    // 支持与 faceliveness 相同的所有参数
}, res => {});

摄像头配置(定制设备适配)

设置后持久生效,后续 faceliveness/recycler 自动使用。

PPFace.getCameraInfo({}, res => {
    // res.cameraCount / res.cameras / res.persistConfig
});

PPFace.setCameraConfig({
    baiduRotation: 90,
    previewRotation: 90,
    captureRotation: 90,
    cameraId: 0,
}, res => {});

参数配置(皮肤/阈值)

PPFace.setFaceConfig({
    VALUE_MIN_FACE_SIZE: 200,
    VALUE_NOT_FACE_THRESHOLD: 0.6,
    VALUE_BLURNESS: 0.3,
    VALUE_BRIGHTNESS: 82,           // 仅Android
    VALUE_OCCLUSION: 0.5,
    VALUE_HEAD_PITCH: 8,
    VALUE_HEAD_YAW: 8,
    VALUE_CLOSE_EYES: 0.7,          // 仅Android
    VALUE_CACHE_IMAGE_NUM: 3,
    VALUE_OPEN_MASK: true,
    VALUE_MASK_THRESHOLD: 0.7,
    VALUE_CONDITION_TIMEOUT: 15,
    VALUE_SCALE: 1.0,
    VALUE_CROP_HEIGHT: 640,
    VALUE_CROP_ENLARGERATIO: 1.5,
    VALUE_FAR_RATIO: 0.4,
    isEnableSound: true,
    hasBottomText: true,
    bottomText: '— 百度大脑技术支持 —',
    COLOR_BG: '#FFFFFF',
    COLOR_CIRCLE_LINE: '#CCCCCC',
    topTextColor: '#000000',
    topSecondTextColor: '#666666',
    hasBottomImg: true,
}, res => {});

释放资源

PPFace.release();

回调码

code 说明
200 成功
201 超时/失败
202 用户取消

活体动作类型

说明
Eye 眨眼
Mouth 张嘴
HeadUp 抬头
HeadDown 低头
HeadLeft 左转头
HeadRight 右转头

联系作者

QQ: 37894663 | 配套插件: 百度OCR 2.1

隐私、权限声明

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

需要申请相机权限,用于人脸采集功能

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

插件自身不采集任何数据,插件使用的百度离线人人脸采集SDK采集数据,请参考其官方说明:https://ai.baidu.com/ai-doc/FACE/Mk37c1pue

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