日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

iOS接入

刷臉認證提供iOS客戶端SDK,幫助您在業務應用(App)中實現刷臉認證功能。您可通過刷臉認證的服務端認證初始化接口,獲取刷臉認證唯一標識CertifyId,并使用CertifyId喚起刷臉認證客戶端SDK。本文將結合示例代碼進行iOS客戶端接入的詳細說明。

前提條件

  • 系統版本:iOS 9.0 及以上

  • 支持語言:Objective-C、Swift

說明

SDK 不支持模擬器調試。

配置開發環境

  1. info.plist中配置攝像頭和麥克風權限請求(僅金融級多因子意愿認證方案需配置麥克風權限)。

    image

  2. 在Xcode的編譯設置中關閉Enable Bitcode選項。

    ios-開發環境配置2

    重要

    Xcode 15 開始 ENABLE_BITCODE 將不再生效,詳見:Xcode Release Notes

  3. 在Xcode編譯設置的Linking > Other Linker Flags中,添加設置-ObjC

    若您使用Xcode 15進行編譯,還需添加Id64

    配置

    如果您的工程設置了-force_load選項,則需要加入-force_load <framework path>/AliyunOSSiOS,命令之間以空格隔開,例如-ObjC -force_load <framework path>/AliyunOSSiOS

配置依賴

  1. 下載iOS SDK

    該SDK為framework包。您需要在Xcode添加Link Binary With Libraries、SDK中的13個包和額外系統庫依賴。

  2. 解壓下載的SDK包,并在解壓的文件夾中執行以下命令提取所有的framework到Products目錄。

    for i in $(ls *.tgz);do tar xvf $i;done
    • SDK中的包:

      AliyunFaceAuthFacade.framework
      APBToygerFacade.framework
      APPSecuritySDK.framework
      BioAuthEngine.framework
      faceguard.framework
      DTFIdentityManager.framework
      DTFUtility.framework
      MultiFactorFacade.framework
      OCRDetectSDKForTech.framework
      ToygerNative.framework
      ToygerService.framework
      VerifyNativeAbility.framework
    • 系統庫依賴:

      CoreGraphics.framework
      Accelerate.framework
      SystemConfiguration.framework
      AssetsLibrary.framework
      CoreTelephony.framework
      QuartzCore.framework
      CoreFoundation.framework
      CoreLocation.framework
      ImageIO.framework
      CoreMedia.framework
      CoreMotion.framework
      AVFoundation.framework
      WebKit.framework
      libresolv.tbd
      libz.tbd
      libc++.tbd
      libc++.1.tbd
      libc++abi.tbd
      AudioToolbox.framework
      CFNetwork.framework
      MobileCoreServices.framework
      libz.1.2.8.tbd
      AdSupport.framework
      ReplayKit.framework

拷貝資源文件

選擇TARGETS,單擊Build Phases頁簽,在Copy Bundle Resources中添加以下bundle:

  • APBToygerFacade.bundle:位于APBToygerFacade.framework中。

  • ToygerService.bundle:位于ToygerService.framework中。

  • OCRXMedia.bundle:位于OCRDetectSDKForTech.framework中。

  • BioAuthEngine.bundle:位于BioAuthEngine.framework中。

  • MultiFactorFacade.bundle:位于MultiFactorFacade.framework中。

  • APBToygerFacadeSuitable.bundle:位于APBToygerFacade.framework中。

image.png

調用SDK

  1. 引入頭文件。

    命令如下:

    #import <AliyunFaceAuthFacade/AliyunFaceAuthFacade.h>
  2. 初始化SDK。

    說明

    為了提升用戶體驗并為刷臉認證準備一些必備的數據,iOS客戶端需要進行SDK初始化。您可以在調用appDelegate函數(如下示例)和步驟3獲取metaInfo數據前,這兩個位置二選一放置初始化SDK代碼。

    appDelegate函數調用,示例代碼:

    - (BOOL)application:(UIApplication)application didFinishLaunchingWithOptions:(NSDictionary)launchOptions {
        [AliyunFaceAuthFacade init];// 初始化SDK。
    }
  3. 獲取metaInfo數據。

    命令如下:

    [AliyunFaceAuthFacade init];// 初始化SDK,如果已經在appDelegate函數中調用過,此處無需再重復調用。
    [AliyunFaceAuthFacade getMetaInfo];
    說明

    返回值類型是NSDictionary,您的服務端需要將其轉換為JSON字符串,調用服務端發起認證請求接口時,在入參metaInfo中傳入該值。關于發起認證請求的具體操作,請參見InitFaceVerify-發起認證請求

  4. 調用SDK開始認證。

    命令如下:

    [AliyunFaceAuthFacade verifyWith:certifyId extParams:extParams onCompletion:^(ZIMResponse *response) {}];

    參數說明如下表所示。

    名稱

    類型

    描述

    certifyId

    NSString

    您可以通過服務端發起申請請求接口獲取該參數。關于發起認證請求的具體操作,請參見InitFaceVerify-發起認證請求

    extParams

    NSDictionary

    通過以下代碼傳入當前viewController,用于展現網絡加載和presentViewController

    [extParams setValue:self forKey:@"currentCtr"];
    • 如需設置OCR的下一步按鈕的顏色,在extParams中添加按鈕的正常顏色和按鈕按下時的顏色。代碼示例如下:

      [extParams setValue:@"00FF00" forKey:ZIM_EXT_PARAMS_KEY_OCR_BOTTOM_BUTTON_COLOR];
      [extParams setValue:@"0000FF" forKey:PARAMS_KEY_OCR_BOTTOM_BUTTON_CLICKED_COLZIM_EXT_OR];
    • 如需設置掃臉時的圓圈顏色,在extParams中添加圓圈顏色。代碼示例如下:

      [extParams setValue:@"FF0000" forKey:ZIM_EXT_PARAMS_KEY_OCR_FACE_CIRCLE_COLOR];
    • 如需返回本地視頻,在extParams中添加returnVideo,并且設置值為true。代碼示例如下:

      [extParams setValue:@"true" forKey:@"returnVideo"];
    • 如需服務端查詢接口返回視頻,需要額外在extParams中添加ZIM_EXT_PARAMS_KEY_USE_VIDEO_UPLOAD,并且設置值為true。代碼示例如下:

       [extParams setValue:@"true" forKey:ZIM_EXT_PARAMS_KEY_USE_VIDEO_UPLOAD] 
      說明

      金融級實人認證支持設置返回活體檢測的視頻,默認設置為不返回。如果設置為返回,在您使用金融級實人認證SDK完成認證(不區分認證結果為F或T),并在SDK回調和查詢接口時返回視頻路徑,請您及時處理。

    返回結果說明:

    [AliyunFaceAuthFacade verifyWith:certifyId extParams:extParams onCompletion:^(ZIMResponse *response) {}];

    response.code包含以下返回參數,具體說明如下表所示。

    錯誤碼

    錯誤碼文案

    錯誤碼描述

    1000(ZIMResponseSuccess)

    刷臉成功

    代表刷臉成功,該結果僅供參考,可通過服務端獲取認證結果接口獲取最終認證結果。關于獲取認證結果接口的具體操作,請參見DescribeFaceVerify-獲取認證結果

    1001(ZIMInternalError)

    系統錯誤

    表示系統錯誤。

    1003(ZIMInterrupt)

    驗證中斷

    表示驗證中斷。

    2002(ZIMNetworkfail)

    網絡錯誤

    表示網絡錯誤。

    2003(ZIMTIMEError)

    客戶端設備時間錯誤

    表示客戶端設備時間錯誤。

    2006(ZIMResponseFail)

    刷臉失敗

    表示刷臉失敗,如需獲取更詳細的失敗原因,需調用服務端獲取認證結果接口。關于獲取認證結果接口的具體操作,請參見DescribeFaceVerify-獲取認證結果

    說明

    更多錯誤碼信息,請參見iOS客戶端錯誤碼詳情

    代碼示例:

    [AliyunFaceAuthFacade verifyWith:certifyId extParams:extParams onCompletion:^(ZIMResponse *response) {
             dispatch_async(dispatch_get_main_queue(), ^{
                 NSString *title = @"刷臉成功";
                 switch (response.code) {
                     case ZIMResponseSuccess://1000。
                         break;
                     case ZIMInterrupt://1003。
                         title = @"用戶退出";
                         break;
                     case ZIMNetworkfail://2002。
                         title = @"網絡錯誤";
                         break;
                     case ZIMTIMEError: //2003。
                         title = @"設備時間設置不對";
                         break;
                     case ZIMResponseFail: //2006。
                         title = @"刷臉失敗";
                         break;
                     case ZIMInternalError://1001。
                         title = @"初始化失敗";
                         break;
                     default:
                         break;
                 }
             });
        }];

Demo代碼包

您可以下載合適的iOS Demo代碼包進行體驗:

Demo體驗前,請將其中的SDK版本更新至最新。

SDK包大小裁剪說明

更多說明,請參見SDK包裁剪說明