接入文档
FaceID增强版
APP接入
SDK集成
活体检测集成
iOS
预处理及活体检测接口
预处理及活体检测接口
# 活体初始化接口
# 1 类MegLiveV5DetectManager
MegLiveV5DetectManager类是管理活体认证的核心类,活体认证相关功能都需要使用该类进行。
# 1.1 开启FaceID活体认证
函数名 | +megFaceIDLiveDetectManagerWithBizToken: configInfo: extraData: startCallBack: detectVC: endCallBack: dismissCallBack | ||
*/
+ (void)megFaceIDLiveDetectManagerWithBizToken(NSString *__nonnull)bizTokenStr extraData:(NSDictionary *__nullable)extraDict startCallBack:(MegLiveV5StartDetectBlock)startBlock detectVC:(UIViewController *)detectVC endCallBack:(MegLiveV5EndDetectBlock)endBlock dismissCallBack:(MegLiveV5DismissBlock)dismissBlock; |
|||
名称 | 开启FaceID活体认证 | ||
说明 | 设置不同的启动类型,通过 block返回校验结果。不同阶段返回不同的block。如果该阶段block中的内容已经提示失败,则不会进行下一阶段的block返回 | ||
变量名 | 说明 | 类型 | |
bizTokenStr | 设置FaceID活体检测的启动配置 | NSString *__nonnull | |
configItem | 设置FaceID活体检测的自定义配置 | MegLiveV5DetectInitConfigItem *__nullable | |
extraDict | 预留参数,当前为nil | NSDictionary *__nullable | |
startBlock | 活体检测初始化完成block | MegLiveV5StartDetectBlock | |
detectVC | 开启活体检测的VC页面,一般为当前ViewController | UIViewController * | |
endBlock | 活体检测完成时block | MegLiveV5EndDetectBlock | |
dismissBlock | 活体检测结束,页面收起时block | MegLiveV5DismissBlock |
# 1.2 获取活体认证过程中的日志信息
函数名 | +queryMGFaceIDLiveDetectLogInfo | ||
+ (NSData *)queryMGFaceIDLiveDetectLogInfo; | |||
名称 | 获取活体检测过程中的日志信息 | ||
说明 | 该日志信息为加密数据,请通过FaceID服务进行解密处理 | ||
变量名 | 说明 | 类型 | |
无参数 | |||
返回值类型 | 说明 | ||
NSData * | 加密后的日志数据 |
# 1.3 解密活体检测过程中的视频和图片文件
函数名 | +encodeMGFaceIDLiveDetectFileWithFilePath: encodeKey | |
---|---|---|
+ (NSDictionary *)encodeMGFaceIDLiveDetectFileWithFilePath:(NSString *)filePath encodeKey:(NSString *)encodeStr; | ||
名称 | 解密活体检测过程中的视频和图片文件 | |
说明 | 针对加密数据进行解密处理,需要用户提供key进行解密 | |
变量名 | 说明 | 类型 |
filePath | 存储加密文件的路径 | NSString * |
encodeStr | 用于解密的key | NSString * |
返回值类型 | 说明 | |
NSDictionary* | 解密后的文件信息。该信息为解密后暂存到沙盒中的路径组合 |
# 1.4 获取 SDK 版本号信息
函数名 | +getSDKVersion | |
+ (NSString *_Nonnull)getSDKVersion; | ||
名称 | 获取 SDK 版本号信息 | |
说明 | 无 | |
变量名 | 说明 | 类型 |
无参数 | ||
返回值类型 | 说明 | |
NSString * | SDK版本号 |
# 1.5 获取 SDK 构建版本信息
函数名 | +getSDKBuild | |
+ (NSString *_Nonnull)getSDKBuild; | ||
名称 | 获取 SDK 构建版本信息 | |
说明 | 无 | |
变量名 | 说明 | 类型 |
无参数 | ||
返回值类型 | 说明 | |
NSString * | SDK构建版本信息 |
# 2 可配置类
该类文件中包括了用户可以自定义的配置。该SDK为V5版本活体,同时兼容V3版本。V5版本下,部分自定义的配置会被FaceID控制台更改。
# 2.1 MegLiveV5DetectInitConfigItem
变量名 | 说明 |
类型 |
---|---|---|
languageType | 必选。指定活体V5语言类型,关于SDK语言资源加载的方式,详情见文档中资源说明 | MegLiveV5DetectLanguageType |
hostURL | 必选。指定活体V5拉取配置的HOST地址。默认为“https://api.megvii.com”,具体见下方表格 | NSString* |
bundleFilePath | 非必选。指定SDK资源绝对路径,以‘bundle’为结尾。如果该值为nil或者“”,则从MainBundle中读取资源。关于资源加载的方式,详情见文档中资源说明 | NSString* |
phoneVertical | 非必选。指定活体检测过程中设备垂直检测类型。默认为“MegLiveV5DetectPhoneVerticalTypeFront2” | MegLiveV5DetectPhoneVerticalType |
isAdjustPhoneVolume | 非必选。是否进行音量调节。其中YES为开启,NO为不开启。开启后,会将当前设备音量调节到‘maxPhoneVolume’,默认为NO | BOOL |
adjustPhoneVolume | 非必选。音量调节后最大音量。阈值范围为[0, 100],默认为0。该参数仅在‘isAdjustPhoneVolume’值为YES时生效 | int |
showPoweryby | 非必选。指定是否显示活体检测页面底部powerby图片。默认值为NO,不显示 | BOOL |
customUI | 非必选。指定活体V5的UI样式 | MegLiveV5DetectUIConfigItem |
Host取值 | 说明 | |
----------------- | ------- | |
https://api.megvii.com | 中国集群(默认) | |
https://api-sgp.megvii.com | 新加坡 | |
https://api-idn.megvii.com | 印尼 |
# 2.2 MegLiveV5DetectUIConfigItem
变量名 | 说明 | 类型 |
---|---|---|
livenessHomeContourLineColor | 检测成功中间人形线条色 | UIColor * |
livenessHomeFailContourLineColor | 检测失败中间人形线条色 | UIColor * |
livenessHomeFlashContourLineColor | 炫彩活体检测过程中间人形线条色 | UIColor * |
livenessHomeActionProcessBarColor | 动作活体进度条颜色 | UIColor * |
livenessHomeFlashProcessBarColor | 炫彩活体进度条颜色 | UIColor * |
livenessHomeLoadingLineColor | loading蛇形线颜色 | UIColor * |
livenessHomeFlashRemindTextColor | 炫彩阶段提示文字颜色 | UIColor * |
livenessHomeNormalRemindTextColor | 正常状态提示文字颜色 | UIColor * |
livenessHomeFailedRemindTextColor | 失败状态提示文字颜色 | UIColor * |
livenessHomeRemindTextSize | 提示文字大小 | CGFloat |
livenessHomeActionRemindTextColor | 动作提示字体颜色 | UIColor * |
livenessHomeActionRemindTextSize | 动作活体提示文字大小 | CGFloat |
livenessHomeLoadingTextColor | 验证中提示字体颜色 | UIColor * |
livenessHomeLoadingTextSize | 验证中提示文字大小 | CGFloat |
livenessHomeCircleColor | 主题圆圈颜色 | UIColor * |
livenessHomeBackgroundColor | 采集区域外背景颜色 | UIColor * |
livenessHomeActionHatColor | 动作活体过程中小帽子颜色 | UIColor * |
livenessHomeDeviceVerticalRemindColor | 手机竖向垂直提示字体颜色 | UIColor * |
livenessHomeDeviceVerticalRemindSize | 手机竖向垂直提示字体大小 | CGFloat |
livenessHomeBeforeLookMirrorContourLineColor | 第一次完成照镜子之前人形线条颜色 | UIColor * |
livenessHomeBeforeLookMirrorRemindTextColor | 第一次完成照镜子之前提示文字颜色 | UIColor * |
# 3 类MegLiveV5DetectError
变量名 | 说明 | 类型 |
---|---|---|
errorCode | 活体认证返回值code | MegLiveV5DetectErrorType |
errorMessage | 活体认证返回值message | NSString * |
# 4 枚举
# 4.1 MegLiveV5DetectLanguageType
活体检测语言类型
枚举名 | 说明 | 枚举值 |
---|---|---|
MegLiveV5DetectLanguageTypeCh | 中文模式 | 0-默认值 |
# 4.2 MegLiveV5DetectPhoneVerticalType
活体检测设备垂直检测类型
枚举名 | 说明 | 枚举值 |
---|---|---|
MegLiveV5DetectPhoneVerticalTypeContinue | 持续启用设备垂直检测功能 | 1 |
MegLiveV5DetectPhoneVerticalTypeFront2 | 仅在检测开启的2秒内启用,之后关闭该功能 | 2 |
MegLiveV5DetectPhoneVerticalTypeDisable | 禁用设备垂直检测功能 | 3 |
# 4.3 MegLiveV5DetectSignType
活体检测错误类型
枚举名 | 说明 | 枚举值 |
---|---|---|
MegLiveV5DetectErrorTypeOK | SDK活体成功 | 1000 |
MegLiveV5DetectErrorTypeBizTokenDenied | 传入的biz_token不符合要求 | 1001 |
MegLiveV5DetectErrorTypeIllegalParameter | 传入的参数不合法 | 1002 |
MegLiveV5DetectErrorTypeAuthenticationFail | SDK鉴权失败 | 1003 |
MegLiveV5DetectErrorTypeMobileNotSupport | 手机不在支持列表里 | 1004 |
MegLiveV5DetectErrorTypeNullPointException | 若出现此类错误,请联系FaceID技术支持 | 1005 |
MegLiveV5DetectErrorTypeRequestFrequently | 同一台设备同时存在多次调用 | 1006 |
MegLiveV5DetectErrorTypeNetworkTimeout | 网络请求超时 | 1007 |
MegLiveV5DetectErrorTypeInternalError | 网络配置错误。当出现此类错误,请重试。如果此类错误持续出现,请联系FaceID技术支持 | 1008 |
MegLiveV5DetectErrorTypeInvalidBundleID | 信息验证失败,请重试 | 1009 |
MegLiveV5DetectErrorTypeNetworkError | 网络连接失败,请查看网络状态 | 1010 |
MegLiveV5DetectErrorTypeUserCancel | 用户取消 | 1011 |
MegLiveV5DetectErrorTypeNoCameraPermission | 没有使用相机的权限,请开启相机权限后重试 | 1012 |
MegLiveV5DetectErrorTypeNoCameraSupport | 无法启动相机,请确定相机功能完好 | 1013 |
MegLiveV5DetectErrorTypeFaceInitFail | 无法启动人脸识别,请重试 | 1014 |
MegLiveV5DetectErrorTypeLivenessFailure | SDK活体检测失败 | 1016 |
MegLiveV5DetectErrorTypeGotoBackground | 应用推到后台,活体检测失败 | 1017 |
MegLiveV5DetectErrorTypeLivenessTimeout | 应用操作超时,活体检测失败 | 1018 |
MegLiveV5DetectErrorTypeDataUploadFail | 活体验证上传异常,活体检测失败 | 1019 |
该文档未解决您的疑问?查看常见问题