本章将展示 SDK 核心接口的调用方法。具体的代码示例参考交付 Demo(demo/module/src/main/ets/pages/HuiYanModePage.ets)。
注意:
以下文章出现 “刷脸” 一词均可以表示为 “人脸核身”。
SDK 接口调用方法
SDK 代码调用的入口为:WbCloudFaceVerifySdk 这个类。
export class WbCloudFaceVerifySdk {/*** 该类为一个单例,需要先获得单例对象再进行后续操作*/public static getInstance(): WbCloudFaceVerifySdk {…}/*** 在使用SDK前先初始化,传入需要的数据WbFaceVerifyConfig* 由 WbCloudFaceVerifyLoginCallback返回是否登录SDK成功* 关于传入WbFaceVerifyConfig见后面的说明*/public initSdk(context: Context, config: WbFaceVerifyConfig, loginCallback: WbCloudFaceVerifyLoginCallback) {…}/*** 登录成功后,调用此函数拉起sdk页面。* 由 WbCloudFaceVerifyResultCallback返回刷脸结果。*/public startWbFaceVerifySdk(context: Context, resultCallback: WbCloudFaceVerifyResultCallback) {…}/*** 拿到刷脸结果后,释放资源, 防止内存泄漏* 【注意】请务必在拿到刷脸结果后释放资源,否则可能会发生丢失回调的情况!*/public release() {…}}
WbCloudFaceVerifySdk.initSdk() 的第二个参数 config: WbFaceVerifyConfig 用来传递 sdk 初始化必需数据和 sdk 配置项参数。
export class WbFaceVerifyConfig {//sdk初始化必需数据public inputData: InputData;//是否开启日志,默认不打开sdk日志,//【注意】上线请务必关闭sdk日志!public isEnableLog: boolean = false;}
必须传递的参数包括(参考要求详见本页接口参数说明的描述):
//这些都是InputData对象里的字段,是需要传入的数据信息export class InputData {//此次刷脸用户标识,合作方需要向人脸识别后台拉取获得,详见获取faceId接口public faceId: string;//订单号public orderNo: string;//APP_IDpublic appId: string;//openapi Versionpublic version: string;//32位随机字符串public nonce: string;//User idpublic userId: string;//签名信息public sign: string;////在人脸核身控制台内申请public licence: string;}
接口参数说明
InputData 对象说明
InputData 是用来给 SDK 传递必须参数所需要使用的对象,合作方需要往里塞入SDK 需要的一些数据以便启动刷脸 SDK。
其中 InputData 对象中的各个参数定义如下表,请合作方按下表标准传入对应的数据。
参数 | 说明 | 类型 | 长度(字节) | 是否必填 | |
faceId | 刷脸id号,由合作方向人脸识别后台拉取获得 | String | - | 是 | |
orderNo | 订单号,合作方订单的唯一标识 | String | 32 | 是 | |
appId | String | 8 | 是 | | |
version | 接口版本号,默认填1.0.0 | String | 20 | 是 | |
nonce | 32 位随机字符串,每次请求需要的一次性 nonce | String | 32 | 是 | |
userId | User Id,每个用户唯一的标识 | String | 30 | 是 | |
sign | String | 40 | 是 | | |
licence | 在人脸核身控制台内申请 | String | 以实际申请为准 | 是 | |
个性化参数设置(可选)
WbCloudFaceVerifySdk.initSdk() 里 WbFaceVerifyConfig,除了必须要传的 InputData 对象之外,还可以由合作方为其传入一些个性化参数,量身打造更契合自己 App 的 SDK。如果合作方未设置这些参数,则以下所有参数按默认值设置。
(暂不支持,后续 sdk 版本将逐步更新)