尊敬的用户您好!即日起本官网将启用新域名"shanyan.253.com",原域名(flash.253.com)将自动跳转至新域名,原域名后期将停用。请您及时更新浏览器收藏夹或直接使用新域名访问本官网。万分感谢您的配合!

闪验、创蓝闪验


一、准备工作


概述


本文档是实人人证SDK_iOS v2.0.0 版本的接入文档用于指导SDK的使用方法,默认读者熟悉Xcode编译器的使用以及iOS编程语言。


前置条件

  • SDK版本:V 1.0 
  • Xcode版本 : V9.4.1及以上版本,iOS9.0 及以上版本。


创建应用


提示:一个应用对应一个appid,多个应用(不同bundleID)需在闪验平台创建多个应用以对应多个appid

应用的创建流程及APPID/APPKEY的获取,请查看「账号创建」文档


快速体验Demo


  • 将获取到appkey 、 appid 以及 licenseID  填入 Demo 中sdk 的初始化方法中
  • 将demo的bundleId 改为自己的bundleid
  • 导入与bundleID 对应的 授权文件 idl-license.face-ios 与 aip.license 
  • 编译运行


开发环境搭建


  1. 导入framework: 将实人认证SDK压缩包中framework文件夹下所有资源添加到工程中(注意勾选勾选 copyItems if need


Foxmail20191204154523.png


2.配置Xcdoe


  • 关闭Bitcode 


Foxmail20191204160255.png



  • Xcode->TARGETS->Build Settings->Linking->Other Linker Flags 添加–ObjC(Swift 工程:Xcode->BuildSeetings->Other Linker Flags 添加 -force_load 并在 -force_load 下方添加 CLRPSDK.framework/CLRPSDK 所在的路径)



Foxmail20191204162224.png



  • 添加依赖的系统动态库


 AVFoundation.framework

 libc++.tdb


WX20191204-164454.png


  • 将以下依赖库 设置 为 Embedded Binary


     AipBase.framework 

      AipO crSdk.framework

      IdcardQuality.framework


     Xcode 11.0 以下版本 设置方式: 在Xcode -> General -> Embedded Binary 中点击+  依次加入 以上三个 依赖库 


    Foxmail20191204170934.png

   

    Xcode11.0 及以上版本 设置方式:在Xcdoe ->General ->Frameworks,Libraries,and Embedded content 中依次将三个依赖库 设置为Embed & Sign


 Foxmail20191204171442.png



  • 添加摄像头访问权限 pilst字段


Foxmail20191206114956.png





3.导入授权文件


  • 联系客服获取   授权证书文件 (idl-license.face-ios 与 aip.license   文件与app bundleID 绑定 用于调用SDK 授权。
  • 文件名称不可更改,直接导入项目即可



二、SDK调用说明


1.初始化SDK


方法原型


/// 初始化SDK
/// @param appid 创蓝平台appid
/// @param appKey 创蓝平台appKey
/// @param licenseID licenseID
/// @param complete 初始化结果
+(void)initWithAppId:(NSString *)appid
              appKey:(NSString *)appKey
           licenseID:(NSString *)licenseID
            complete:(void (^)(NSDictionary * _Nullable result,NSError * _Nullable error))complete;


参数描述


参数

是否必填

参数类型

说明

appid

NSString

实人认证获取的appID

appKey

NSString

实人认证获取的appKey

licenseID

NSString

由平台对接人员提供

complete

block

初始化结果回调


示例代码


 //初始化
[CLRPSDKManager initWithAppId:@"appid"
                           appKey:@"appkey"
                        licenseID:@"licenseID"
                         complete:nil];


方法作用:初始化SDK,请在调用


2.SDK 配置


在调用SDK前可以对SDK 的相关参数进行配置,配置信息详情见  CLRPConfigure类。以下为配置代码示例


    CLRPConfigure *config =  [CLRPConfigure new];
    //设置活体检测序列(用户自己组合)
    config.liveActionArray = @[@(CLRPFaceLivenessActionTypeLiveEye),@(CLRPFaceLivenessActionTypeLiveMouth),@(CLRPFaceLivenessActionTypeLiveYaw)].mutableCopy;;
    config.isByOrder = YES;
    //设置OCR 识别信息是否可编辑
    config.nameOpenEdit = YES;
    config.idCardOpenEdit = YES;
    config.addressOpenEdit = YES;
    
    [CLRPSDKManager configure:config];



3.调用SDK


//调用SDK
 [CLRPSDKManager verify:self complete:^(CLRPCompleteResult * _Nonnull completeResult) {
        
        if (completeResult.code == 1010) {
            
            NSLog(@"用户取消");
            return;
        }
        
        if (completeResult.error) {
            
            //网络异常
        }else{
            
             //成功
            if (completeResult.code == 1000) {
                       
                //活体照片与身份证头像 匹配分数  (此处设置阀值为80 ,用户可以根据情况 设定自己的阀值)
                if (completeResult.clValue > 80) {
                    
                    //人证比对通过
                    /*
                    completeResult.liveImage;//活体照片
                    completeResult.idCardFrontImage;//身份证正面照片
                    completeResult.idCardBackImage;//身份证反面照片
                    completeResult.clModel;//身份证信息(编辑后)
                    completeResult.data;//二要素核验信息
                    */
                }else{
                    //失败
                    NSLog(@"相似度太低,不为同一人");
                }
                
            }else{
                
                //失败
                NSLog(@"%@",completeResult.message);
                
            }
        }
    }];




SDK返回码对照表(code)


返回码

返回码描述

1000

成功

1005

身份证正面认证失败

1006

身份证反面认证失败

1007

人证核验失败

1008

身份证二要素验证失败

1010

用户点击返回

1101

网络异常

1102

业务接口报错

1103

其他错误

1104

身份证信息识别回调

1105

身份证正面认证成功

1106

身份证反面认证成功

1107

人证核验成功

1108

身份证二要素核验成功


常见问题


  • 身份证扫描提示无权限


       1. 请检查手机网络是否正常。

      2.请确保 权证书文件  和 工程bundleID 一致


  • 编译报错


Foxmail20191205101329.png

    参见Xcode Other Linker Flags  配置项


  • 运行报错

  

Foxmail20191205102301.png

     参见Xcode Other Linker Flags  配置项


  • 运行时报错 app identifier unmatch 错误的BundleID


     1.请确保 权证书文件  和 工程bundleID 一致

    2.联系客服重新获取 权证书文件 并替换


  • 上架APPstore异常


Foxmail20191205103407.png


用SDK 内提供的 appstore 架包替换 AipBase.framework 、 AipO crSdk.framework 和IdcardQuality.framework 三个动态库


注意:该架包只适用于真机调试,不适用模拟器