更新记录

1.0(2021-02-08)

根据百度demo,修改人脸识别页面样式,并能根据动作,实现假人动态效果。


平台兼容性

Android Android CPU类型 iOS
适用版本区间:5.1 - 11.0 armeabi-v7a:支持,arm64-v8a:支持,x86:未测试 适用版本区间:9 - 14

原生插件通用使用流程:

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


一、前言

在做项目时,需要用到活体检测技术,经过查找多个厂家,最终选择了百度的人脸离线采集SDK,而在做安卓、ios插件,以及跟uniapp进行插件整合的过程中,也踩到了很多坑,因此特推出此插件,供大家使用。我们在使用百度demo自带UI效果的同时,也将显示效果进行了很大程度的修改,之后随着插件版本的升级,效果会逐步完善。

二、百度智能云账号申请、以及申请离线采集相关说明

登录注册地址:https://login.bce.baidu.com/

离线采集SDK:https://ai.baidu.com/ai-doc/FACE/Ek37c1q2g

三、使用步骤

1.首先生成安卓签名、ios相关证书,在申请百度离线采集SDK、以及后续uniapp进行打包的时候都需要使用。

2.在百度平台申请离线采集SDK,申请通过后,会分别得到安卓、ios平台的licenseId、以及两个授权文件,请保管好这些信息,在后面的uniapp插件中,会需要把两个授权文件粘贴到到对应的目录,以及代码中需要使用licenseId。

3.uniapp项目接入步骤

3.1在项目根目录创建文件夹 nativeplugins,然后创建android、ios、assets目录,目录层级见图;将百度授权文件 License 放到,安卓:nativeplugins/bjf-face/android/assets/idl-license.face-android;iOS:nativeplugins/bjf-face/ios/idl-license.face-ios。注意必须完全一致,没路径的请自行创建,nativeplugins 文件夹在项目根目录下。`注意 iOS 没有 assets 文件夹,直接放到 ios 文件夹下。

示例图

3.2 manifest.json 文件,选中「App 原生插件配置」,选中云端插件,勾选插件对应的插件。

示例图

3.3 使用插件:如果没有修改授权文件的名称,那么只需要修改licenseId字段即可。

var _this = this;
var bjfFace = uni.requireNativePlugin('bjf-face');
var config = {
    licenseFileName: 'idl-license.face-android', //授权文件名称,安卓自己可自定义名称,只要与授权文件命名一致就行
    licenseId: '修改-face-android', //百度授权中的License ID,安卓
    action: '' //行为动作,传递空字符串,后台随机判断取一个动作,还可取值为【Eye、Mouth、HeadUp、HeadDown、HeadLeft、HeadRight】,只能选择一个取值
};
if (plus.os.name == 'iOS') {
    config.licenseId = '修改-face-ios';//百度授权中的License ID,苹果
    config.licenseFileName = 'idl-license.face-ios'; //授权文件名称,经测试ios不可改,默认百度下载下来的即可
}
bjfFace.verifyFace(config,function(imgBase){
    _this.imgBase = imgBase; //返回值就是base64
}); 

3.4 打自定义基座

需要打自定义基座才可以进行测试,运行->运行到手机或模拟器->制作自定义基座。

Android注意:这里是用的证书文件及包名一定要跟申请百度的使用的证书保持一致

iOS注意:Bundle ID一定要跟百度注册的保持一致;自定义基座这里是用的是发布证书的描述文件,并且描述文件一定要包含测试手机信息

3.5 自定义基座打包完成以后选择基座:运行-》运行到手机或模拟器-》运行基座选择-》自定义调试基座

3.6 真机运行项目

注:该项目获取的bitmap可用于调用百度人脸云服务(如:公安实名认证)

3.7 安卓版体验地址

安卓版下载地址

四、感谢

非常感谢您使用本插件,如果上述过程的使用中有任何问题,请随时联系我qq:695996704;

如果您觉得本插件有帮助,请赞赏一下,感谢支持!

隐私、权限声明

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

摄像头权限

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

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

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

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问