日本熟妇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方法中調用初始化SDK的代碼(如下代碼塊所示),也可以在獲取metaInfo數據前調用初始化SDK代碼(如步驟3所示)。

    appDelegate函數調用,示例代碼:

    - (BOOL)application:(UIApplication)application didFinishLaunchingWithOptions:(NSDictionary)launchOptions {
        [AliyunFaceAuthFacade initSDK];// 初始化SDK。
    }

    IPv6網絡初始化,示例代碼如下:

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

    示例代碼如下:

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

    IPv6網絡初始化,示例代碼如下:

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

    getMetaInfo 方法的返回值類型是NSDictionary,在調用服務端的發起認證請求接口時,您需要先將其轉為JSON格式。

    關于發起認證請求的具體操作,請參見發起認證請求

  4. 調用SDK開始認證。
    命令如下:
    [AliyunFaceAuthFacade verifyWith:certifyId extParams:extParams onCompletion:^(ZIMResponse *response) {}];
    參數說明如下表所示。
    名稱類型描述
    certifyIdNSString您可以通過服務端發起申請請求接口獲取該參數。關于發起認證請求的具體操作,請參見發起認證請求
    extParamsNSDictionary通過以下代碼傳入當前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];
    • 如需自定義X號(頁面關閉按鈕),您可以參照以下步驟:
      • 如需自定義X號的圖片,需要額外在extParams中添加cancelImage,并設置值為UIImage。代碼示例如下:
        [extParams setValue:UIImage forKey:@"cancelImage"];
      • 如需自定義X號的圖片位置,需要額外在extParams中添加imageOrientation,并設置值為rightleft 。默認為left。代碼示例如下:
        [extParams setValue:@"right" forKey:@"imageOrientation"];
    返回結果說明:
    [AliyunFaceAuthFacade verifyWith:certifyId extParams:extParams onCompletion:^(ZIMResponse *response) {}];
    response.code包含以下返回參數,具體說明如下表所示。
    錯誤碼錯誤碼文案錯誤碼描述
    1000(ZIMResponseSuccess)刷臉成功表示刷臉成功。
    說明 該結果僅供參考。可通過服務端查詢接口獲取最終認證結果。
    1001(ZIMInternalError)系統錯誤表示系統錯誤。
    1003(ZIMInterrupt)驗證中斷表示驗證中斷。
    2002(ZIMNetworkfail)網絡錯誤表示網絡錯誤。
    2003(ZIMTIMEError)客戶端設備時間錯誤表示客戶端設備時間錯誤。
    2006(ZIMResponseFail)刷臉失敗表示刷臉失敗。
    說明 如需獲取認證不通過的詳情,需通過服務端查詢接口說明
    說明 關于錯誤碼的更多信息,請參見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包裁剪說明