接入文档
FaceID基础版
APP接入
SDK集成
ios
预处理及活体检测接口
预处理及活体检测接口
iOS SDK初始化仅两步,分别是MGFaceIDLiveDetectManager对象和开始活体检测。
# 获取
MGFaceIDLiveDetectManager类是管理活体认证的类,此类使用默认的构造函数初始化即可。
获取该类前需用以下函数指定活体检测资源路径:
函数名 | designationMGFaceIDLiveDetectFilePath | |
+ (BOOL)designationMGFaceIDLiveDetectFilePath:(NSString *__nonnull)bundleFilePath | ||
名称 | 指定 FaceID 活体检测资源路径。请在调用初始化接口前调用该接口进行路径指定 | |
说明 | 指定资源路径是否成功。默认为NO,设置指定路径失败 | |
变量名 | 说明 | 类型 |
bundleFilePath | 资源路径。请添加资源包绝对路径,以`bundle`为地址后缀名 | NSString* |
获取MGFaceIDLiveDetectManager对象可使用以下两个函数:
函数名 | initMGFaceIDLiveDetectManagerWithBizToken | |
(instancetype _Nullable)initMGFaceIDLiveDetectManagerWithBizToken:(NSString *__nonnull)bizTokenStr
language:(MGFaceIDLiveDetectLanguageType)languageType networkHost:(NSString *__nullable)hostUrl extraData:(NSDictionary *__nullable)extraDict error:(MGFaceIDLiveDetectError *_Nullable*__nonnull)error、 |
||
名称 | 获取活体检测管理类对象 | |
说明 | 传入bizTokenStr、languageType 、hostUrl 、extraDict、error获取管理类对象接口 | |
变量名 | 说明 | 类型 |
bizTokenStr | 业务流水号,每次验证前,通过服务端API获取的流水号(bizToken) | NSString* |
languageType | 选择语言种类。详见MGFaceIDLiveDetectLanguageType说明 | MGFaceIDLiveDetectLanguageType |
hostUrl | 网络请求host地址。host取值见附录E 【host取值列表】,请根据具体情况选择host取值 | NSString * |
extraDict | 预留参数 功能1:更新用户取消弹出框样式,启用样式二。{@“alert_style”:@“2”},启用该样式后,请更新资源包中对应的文本内容 | NSDictionary* |
error | 错误信息结构体,详细见下方MGFaceIDLiveDetectError 说明 | MGFaceIDLiveDetectError* |
函数名 | initMGFaceIDLiveDetectManager | |
(instancetype _Nullable)initMGFaceIDLiveDetectManagerWithBizToken:(NSString *__nonnull)bizTokenStr
language:(MGFaceIDLiveDetectLanguageType)languageType networkHost1:(NSString *__nullable)host1 networkHost2:(NSString *__nullable)host2 extraData:(NSDictionary *__nullable)extraDict configData:(NSDictionary *__nonnull)configDict model:(NSString *__nonnull)model error:(MGFaceIDLiveDetectError * _Nullable *__nonnull)error |
||
名称 | 获取活体检测管理类对象 | |
说明 | 传入bizTokenStr、languageType 、host1 、host2 、extraDict、error获取管理类对象接口 | |
变量名 | 说明 | 类型 |
bizTokenStr | 业务流水号,每次验证前,通过服务端API获取的流水号(bizToken) | NSString* |
languageType | 选择语言种类。详见MGFaceIDLiveDetectLanguageType说明 | MGFaceIDLiveDetectLanguageType |
host1 | 网络请求host地址。host取值见附录E 【host取值列表】,请根据具体情况选择host取值 | NSString * |
host2 | 网络请求host地址。host取值见附录E 【host取值列表】,请根据具体情况选择host取值 | NSString * |
configDict | 通过服务端API获得的data字符串 | NSString |
model |
接口调用模式。取值如下:
MGFaceIDLiveDetectModel_A: 普通模式(默认值) MGFaceIDLiveDetectModel_B: 兼容模式 |
MGFaceIDLiveDetectModel |
extraDict | 预留参数,暂时无使用 | NSDictionary* |
error | 错误信息结构体,详细见下方MGFaceIDLiveDetectError说明 | MGFaceIDLiveDetectError* |
# 开始活体检测
获取MGFaceIDLiveDetectManager对象成功后即可开启活体检测。
MGFaceIDLiveDetectManager.startMGFaceIDLiveDetect
函数名 | startMGFaceIDLiveDetectWithCurrentController | |
-(void)startMGFaceIDLiveDetectWithCurrentController:(UIViewController *__nonnull)detectVC
callback:(MGFaceIDLiveDetectResultBlock __nonnull)block |
||
名称 | 开启活体检测 | |
类型说明 | 函数 | |
说明 | 注:仅当获取MGFaceIDLiveDetectManager中的error结构体中MGFaceIDLiveDetectErrorNone=1000才能开启检测 | |
变量名 | 说明 | 类型 |
detectVC | 启动认证的UI界面 | UIViewController * |
block | 检测结果的回调函数MGFaceIDLiveDetectResultBlock对象,详见回调函数MGFaceIDLiveDetectResultBlock介绍 | MGFaceIDLiveDetectResultBlock |
开启活体检测,检测结果以回调函数MGFaceIDLiveDetectResultBlock对象的形式返回
MGFaceIDLiveDetectResultBlock
函数名 | MGFaceIDLiveDetectResultBlock | |
typedef void(^MGFaceIDLiveDetectResultBlock)(MGFaceIDLiveDetectError* error, NSData* deltaData, NSString* bizTokenStr, NSDictionary* extraOutDataDict) | ||
名称 | 回调函数 | |
类型说明 | 函数 | |
说明 | 无 | |
变量名 | 说明 | 类型 |
error | 错误信息结构体,详细见下方MGFaceIDLiveDetectError说明 | MGFaceIDLiveDetectError* |
deltaData | 客户端验证后数据。注:需用该data调用服务端接口进行数据验证 | NSData* |
bizTokenStr | 业务流水号,每次验证前,通过服务端API获取的流水号(bizToken) | NSString* |
extraOutDataDict | 若getBizeToken接口传入参数get_liveness_video为1,则包含videoPath,为加密后的视频和图片路径 | NSDictionary* |
该回调函数会返回后续数据验证所需要的data,以及错误信息的结构体。至此,SDK初始化成功并完成活体检测流程。若用户getBizeToken接口传入参数get_liveness_video为1,即选择返回活体阶段的视频/图片,可用以下函数解密返回的视频和图片文件:
MGFaceIDLiveDetectManager.decryptVideoPath
函数名 | decryptVideoPath |
+(MGFaceIDLivenessFileResult *_Nonnull)decryptVideoPath:(NSString*_Nonnull)path key:(NSString *_Nonnull)key; | |
名称 | 解密返回的视频和图片文件 |
类型说明 | 函数 |
说明 | 只有getBizToken中配置get_liveness_video为1时可用 |
返回值 | MGFaceIDLivenessFileResult* |
MGFaceIDLivenessFileResult
类成员 | 说明 |
MGFaceIDLivenessResultCode |
错误信息枚举
MGFaceIDLivenessResultCodeSucceed = 1000, //获取成功 MGFaceIDLivenessResultCodeVideoKeyError = 2000, //video_key不正确 MGFaceIDLivenessResultCodePathError = 2100, //path不正确 MGFaceIDLivenessResultCodeFailed = 3000, //其他错误 |
NSString* livenessType | 活体类型(动作:meglive 静默:still 炫彩:flash) |
NSArray<MGFaceIDLivenessFile *>* files | 文件信息 |
MGFaceIDLivenessFile
类成员 | 说明 |
---|---|
NSString *path | 文件路径 |
NSString *fileType | 文件类型(视频:video 图片:image |
NSString *actionType | 动作类型(只有动作活体有值,其他为空。 眨眼:blink 张嘴:open_mouth 左右摇头:shake 上下点头:nod) |
该文档未解决您的疑问?查看常见问题