# IOS 慧眼身份核验SDK

版本历史

时间 版本 描述 作者
2021/10/15 1.1.1 优化了底层算法,提高了安全性和识别速度;优化了人工核验时的提示信息; lyy

# 1、简介

# 1·1 功能介绍

慧眼SDK iOS 版是一种面向iOS移动设备人脸技术开发包,此版SDK包含短信验证、OCR身份证验证、活体识别等功能。基于该方案,开发者可以轻松的构建包含短信验证、OCR身份信息核验、人脸采集和活体识别的应用。在您使用SDK之前,我们首先为您介绍一下SDK本身及相关人脸能力,以便您能更方便使用。

此版SDK所包含的能力如下:

·活体检测 通过让用户做出指定人脸配合式的交互动作,识别当前操作者是否为活体,此功能为离线使用,可设定指定动作是否使用及应用顺序。动作包含:眨眼、张嘴、右摇头、左摇头、向上抬头、向下低头六个。可有效抵御高清图片、3D建模、视频等攻击。

·授权: SDK的授权判断,授权介质也称为license,在SDK使用中,需要通过license向授权服务器发起请求,判断SDK的使用合法性及使用有效期。

下载地址

点击立即下载识蛛慧眼 IOS SDK

# 1.2 兼容性

·系统: 支持iOS8以上系统。需要开发者通过Deployment Target 来保证支持系统的检测。 ·机型: 手机和平板皆可 ·网络: 支持 WIFI 及移动网络,移动网络支持使用 NET 网关及WAP 网关(CMWAP、CTWAP、UNIWAP、3GWAP)。

# 1·3 开发包说明


# 2、集成指南

# 2·1 准备工作

· 申请license: 此license用户活体检测功能使用。

· 申请认证会话Token: 通过在慧眼管理端配置,每次进入SDK都要重新获取。

# 2.2配置授权信息集成

//人脸license文件名

#define FACE_LICENSE_NAME @"idl-license"

//人脸license文件后缀

#define FACE_LICENSE_SUFFIX @"face-ios"

您申请的应用名称(appname)+「-face-ios」后缀,如申请的应用名称(appname)为test123,则此处填写test123-face-ios)

#define FACE_LICENSE_ID @"spider-hy-identity-face-ios"

配置好证书,即可运行。注意已经设置好的Bundle ID不要随意改动

# 2.3 添加SDK到工程

# 1 、SDK包中以下三个文件 拖至项目中

· LiveDetectionSDKFrame.framework

·com.baidu.idl.face.model.faceSDK.bundle

· com.baidu.idl.face.faceSDK.bundle

· com.baidu.idl.face.live.action.image.bundle

# 2、选择添加链接C++标准库

libc++.tbd

如果没有使用Pod管理第三方库的话,请在请在Build Setting >Linking > Other Linker Flags 上面加入 –ObjC 选项。如果用了pod请忽略,因为pod会自动添加上。

# 2.4 添加依赖库

  • 添加依赖库,选择TARGETS -> Build Phases ->Link Binary With Libraries -> Add Files,选择LiveDetectionSDKFrame.framework Frameworks文件下的IDLFaceSDK.framework 如下图所示:
  • 动态库配置

修改Xcode的配置参数 如图

# 2.5 权限声明

需要使用相机权限:编辑Info.plist文件,添加

Privacy- Camera Usage Description 的Key值,Value为使用相机时候的提示语,可以填写:『使用相机』

# 3、功能使用

# 3.1 SDK配置

Appdelegate.m 文件 **-(BOOL)application:(UIApplication )applicationdidFinishLaunchingWithOptions:(NSDictionary )launchOptions 调用以下代码

NSString* licensePath = [NSString stringWithFormat:@"%@.%@", FACE_LICENSE_NAME, FACE_LICENSE_SUFFIX];

[UnitidLiveSDKManager setLicenseID:FACE_LICENSE_ID andLocalLicenceFile:licensePath];

# 3.2 获取SDK版本号

UnitidLiveSDKManager.h 类中调用 getVersion方法[UnitidLiveSDKManager getVersion] 获取当前SDK版本号

# 3.3 SDK调用

# 3.3.1 个人认证

LivingConfigModel 为活体配置参数类,未做配置时,SDK会默认

LivingConfigModel *model = [LivingConfigModel sharedInstance];

model.isByOrder = YES;

model.liveActionArray = [NSMutableArray arrayWithArray:@[@1,@2]];

model.numOfLiveness = 2;

model.token = @"23dd4db660309ef34d21579cc24e746601bc42002c3661aa8eff9640e227bbac";

UnitidVerificatedViewController *vertificateVC = [[UnitidVerificatedViewController alloc] init];

vertificateVC.delegate = self; // 核验结果代理回调

[self.navigationController pushViewController:vertificateVC animated:YES];

其中token为必填项,姓名、手机号、身份证号为选填,当姓名、手机号、身份证号码有值时,优先选择填写的内容作为核验参数,且不可修改。liveActionArray为所选动作数组,默认为眨眼动作(为提供用户更好的用户体验,选择单个动作即可)。

# 3.3.2 企业认证

LivingConfigModel 为活体配置参数类,需配置token

LivingConfigModel *model = [LivingConfigModel sharedInstance];

model.isByOrder = YES;

model.liveActionArray = [NSMutableArray arrayWithArray:@[@1,@2]];

model.numOfLiveness = 2;

model.token = _tokenTextField.text;

SpiderBridgeViewController *spiderVC = [[SpiderBridgeViewController alloc] init];

spiderVC.delegate = self;

[self.navigationController pushViewController:spiderVC animated:YES];

token为必填项;navColor为导航栏字体颜色。

注意事项:企业认证上传资料功能中文件类型需开启iCloud功能;文件大小限制见应用创建后台设置。

# 3.4 SDK结果回调

# 3.4.1 个人代理回调

/*
 * 认证结果返回
 */
- (void)hyLivenessDetectionControllerDidGetResult:(SpiderIDResultCode)result;

 typedef NS_ENUM(NSUInteger, SpiderIDResultCode) {
    SpiderIDCodeOK = 0,   //成功
    SpiderIDCodeMANUAL_AUDIT = 1,    //提交人工审核成功
    SpiderIDCodeCANCEL = 2,  //取消
    SpiderIDCodeINVAILD_TOKEN = 3,  //无效的token
    SpiderIDCodeINVAILD_TPAGETOKEN = 4,  //获取页面会话token失败
    SpiderIDCodeINVAILD_FAILURE = 5,  //其他失败
 };

# 3.4.2 企业认证代理回调函数

/*

企业认证结果回调

*/

- (void)spiderEntAuthenticControllerDidGetResult:(SpiderEntResponseCode)result;

SpiderEntResponseCode 为枚举类型

SpiderEntResponse_Action = 0, //认证中

SpiderEntResponse_Over = 1, //认证完成

SpiderEntResponse_Invalid = 2, // 认证失效

SpiderEntResponse_Error = 3, // 其他错误

# 3.5 问题与解决⽅案

# 1、

解决⽅案 :

# 2、线上审核Bundle⽂件通不过问题修复

(1) 删除com.baidu.idl.face.faceSDK.bundle中的⽂件 A:com.baidu.idl.face.faceSDK B: Info.plist 如下图所示

(2)删除com.baidu.idl.face.live.action.image.bundle中的 ⽂件A: com.baidu.idl.face.live.action.image ⽂件B:Info.plist 如下图所示:

(3)删除com.baidu.idl.face.model.faceSDK.bundle中的 ⽂件A: com.baidu.idl.face.model.faceSDK ⽂件B:Info.plist 如下图所示:

最后更新于: 3/11/2024, 10:48:48 AM