SDK-接入文档(ios版)
接口说明
类MGFaceIDDetectManager
函数名 | initMGFaceIDDetectManagerWithSign |
---|---|
方法描述 | - (instancetype)initMGFaceIDDetectManagerWithSign:(NSString *)sign signVersion:(NSString *)signVersion IDCardName:(NSString *)IDCardName IDCardNum:(NSString *)IDCardNum recordVideo:(BOOL)isRecordVideo extraData:(NSDictionary *)extraDict error:(MGFaceIDDetectError **)error; |
名称 | 初始化方法 |
说明 | 活体检测初始化时调此接口 |
变量名 | 说明 |
sign | 类型: NSString * 说明:加密签名 |
signVersion | 类型: NSString * 说明:签名算法版本 |
IDCardName | 类型: NSString * 说明:身份证姓名 |
IDCardNum | 类型: NSString * 说明:身份证号码 |
isRecordVideo | 类型: bool 说明: 是否需要进行视频录制,默认为NO,不进行视频录制 |
extraDict | 类型: NSDictionary * 说明: 初始化预留接口。默认为nil |
error | 类型: MGFaceIDDetectError** 说明: 初始化错误类型,若没有错误,则该参数为空 |
extraDict说明
key | value |
---|---|
notify_url | 类型:NSString * 说明:请求客户服务器的URL(我们将会把比对结果同时完整发送至您的服务器),POST的内容和get result结果保持一致(images字段除外),参见文档 |
biz_no | 类型:NSString * 说明:客户业务流水号,建议设置为您的业务相关的流水串号并且唯一。并会在return时原封不动的返回给您的服务器,以帮助您确认对应业务的归属 |
verbose | 类型:int 说明:返回数据的详细程度,可选值为[0,1]。默认为0,返回默认信息。1为返回结论和摘要信息 |
security_level | 类型:int 说明:对比对结果的严格程度限制,准确性要求越高,通过率也会相应下降。可选值为[1,2,3]。1:宽松:千一;2:常规:万一(默认值);3:严格:十万一 |
image_ref1 | 类型:UIImage * 说明:由您自己提供的参照人脸照片1 |
image_ref2 | 类型:UIImage * 说明:由您自己提供的参照人脸照片2 |
函数startMGFaceIDNetworkingDetect
函数名 | startMGFaceIDNetworkingDetect |
---|---|
方法描述 | -(void)startMGFaceIDNetworkingDetect:(UIViewController *)detectVC callback:(FaceIDDetectNetworkingResultBlock)result |
名称 | 启动FaceID版本检测 |
类型说明 | 函数 |
说明 | 启动FaceID版本检测 |
变量名 | 说明 |
detectVC | 类型: UIViewController * 说明: 启动检测的VC |
result | 类型: FaceIDDetectNetworkingResultBlock 说明: 检测结果的block回调。详情请参考(MGFaceIDDetectConfig.h) |
- 注意:每次调用startMGFaceIDNetworkingDetect前,请先调用initMGFaceIDDetectManagerWithSign接口
函数versionStr
此函是为非必须函数,获取的SDK版本号便于后期定位问题,建议使用;
函数名 | versionStr |
---|---|
方法描述 | +(NSString *)versionStr |
名称 | 获取SDK的版本号 |
类型说明 | 函数 |
说明 | 无 |
返回值 | string, 一个字符串,表示当前SDK的版本号。 |
函数buildStr
此函是为非必须函数,获取的SDK构筑信息便于后期定位问题,建议使用;
函数名 | buildStr |
---|---|
方法描述 | +(NSString *)buildStr |
名称 | 获取SDK的构筑信息 |
类型说明 | 函数 |
说明 | 无 |
返回值 | string, 一个字符串。 |
枚举类型MGActionLiveDetectState
函数名 | MGActionLiveDetectState |
---|---|
名称 | 该枚举 用于展示当前所处阶段 |
类型说明 | 枚举类型 |
说明 | 该枚举用于展示当前所处阶段 |
枚举名 | 说明 |
MGActionLiveDetectStateDoing | 进行中 |
MGActionLiveDetectStateSuccess | 成功 |
MGActionLiveDetectStateFailure | 失败 |
枚举类型FaceIDDetectActionType
函数名 | FaceIDDetectActionType |
---|---|
名称 | 该枚举 用于 动作活体检测具体动作类型 |
类型说明 | 枚举类型 |
说明 | 该枚举 用于 动作活体检测具体动作类型 |
枚举名 | 说明 |
FaceIDDetectActionTypeBlink | 眨眼 |
FaceIDDetectActionTypeMouth | 张嘴 |
FaceIDDetectActionTypeYaw | 左右摇头 |
FaceIDDetectActionTypePitch | 上下点头 |
FaceIDDetectNetworkingResultBlock回调函数
函数名 | FaceIDDetectNetworkingResultBlock |
---|---|
方法描述 | Detect的回调函数,返回相应的结果 |
名称 | typedef void(^FaceIDDetectNetworkingResultBlock)(NSUInteger Code,NSString* Message, NSArray* videoPathList, NSString* bizResultStr, NSDictionary* extraOutDataDict); |
类型说明 | 函数 |
说明 | 无 |
变量名 | 说明 |
Code | 类型: NSUInteger 说明: 活体检测结果相关返回码,参见文档 |
Message | 类型: NSString* 说明: 活体检测结果相关信息,参见文档 |
videoPathList | 类型: NSArray* 说明: 录制的视频地址 |
bizResultStr | 类型: NSString* 说明: 服务器反馈信息 biz_token |
extraOutDataDict | 类型: NSDictionary* 说明: 其他反馈信息,该参数当前版本默认为空 |
集成说明
集成步骤:
- 请将MGFaceIDDetect.framework和MGFaceIDDetectResource.bundle分别添加到工程中
- 添加依赖:在TARGETS - BuildPhases - Link Binary With Libraries中需要添加CoreMedia.framework,AVFoundation.framework,SystemConfiguration.framework,MGFaceIDDetect.framework
- 由于该SDK中使用了category,需要在TARGETS - Build Settings - OtherLinker Flags 中添加 -ObjC
- 该SDK中使用了C++,请将import并使用该SDK的类后缀改为.mm
开发指南
该SDK由两部分组成,分别为静态framework和模型。该SDK Deployment Info 为8.0,不支持模拟器。开发步骤如下:
- 获取签名,参见文档
- 使用
-initMGFaceIDDetectManagerWithSign:signVersion:imageRef:recordVideo:extraData:error:
接口初始化 MGFaceIDDetectManager 对象,参数请查看API文档 - 初始化 MGFaceIDDetectManager 对象成功后,使用
-startMGFaceIDNetworkingDetect:callback
接口进行 MegLiveV3 活体检测
注意:
- 查看该SDK具体版本号
+versionStr
- 查看该SDK具体构建版本号
+buildStr
- 如果使用XCode8及以上版本的IDE工具,请在主项目的info.plist中设置相关权限设置NSCameraUsageDescription(相机权限)