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

Android客戶端接入教程

人臉核身服務提供Android客戶端SDK幫助您在App中實現刷臉認證功能。本文將結合示例代碼指導您在Android應用中集成人臉核身服務。

說明

阿里云視覺智能開放平臺各類目視覺AI能力API接入、接口使用或問題咨詢等,請通過釘釘群(23109592)加入阿里云視覺智能開放平臺咨詢群聯系我們。

前提條件

應用必須在Android 4.4+真機平臺上運行。

權限說明

如果需要適配折疊屏手機,需要在App的AndroidManifest.xml中注冊以下權限,以便SDK監聽折疊屏設備的折疊/展開狀態改變。

 <uses-permission android:name="android.permission.CHANGE_CONFIGURATION"/>

獲取SDK和Demo代碼

重要

模擬器使用存在安全風險,暫不支持在模擬器上運行。

配置依賴

  1. 解壓SDK,將所有.aar包放入libs目錄下。

  2. 在工程的build.gradle文件中添加libs目錄作為依賴倉庫。

    repositories {
        flatDir {
            dirs 'libs'   // aar目錄
        }
    }
  3. 在應用的build.gradle文件中添加配置。

    android {       
        // 添加以下內容      
        useLibrary 'org.apache.http.legacy'
    }
  4. 在應用的build.gradle文件中添加依賴。

    dependencies { 
        ....
         //fastjson 依賴    
        implementation 'com.alibaba:fastjson:1.2.83_noneautotype'    
         // 本地依賴    
        compile(name: 'baseverify-2.3.15.240328142352', ext: 'aar') 		
            compile(name: 'facade-2.3.15.240328142352', ext: 'aar') 		
            compile(name: 'face-2.3.15.240328142352', ext: 'aar') 		
            compile(name: 'ocr-2.3.15.240328142352', ext: 'aar') 		
            compile(name: 'faceaudio-2.3.15.240328142352', ext: 'aar') 		
            compile(name: 'facelanguage-2.3.15.240328142352', ext: 'aar') 		
            compile(name: 'APSecuritySDK-DeepSec-7.0.1.20240314.jiagu', ext: 'aar')
    }
    
    

調用接口

  1. 初始化SDK。

    為提高身份核驗的用戶體驗,并為刷臉認證準備必要數據,Android客戶端需要進行SDK初始化。初始化的代碼示例如下:

    ZIMFacade.install(context);
  2. 獲取metainfo數據。

    代碼示例如下:

    String metaInfos = ZIMFacade.getMetaInfos(context);

    接入方移動端在人臉核身移動端核身認證移動端請求時需要傳入該metainfo值。

  3. 開始認證。

    代碼示例如下:

    ZIMFacade zimFacade = ZIMFacadeBuilder.create(MainActivity.this);
    HashMap<String, String> extParams = new HashMap<>();
    //如需指定活體檢測UI界面方向(橫屏),請指定這一項。
    // extParams.put(ZIMFacade.ZIM_EXT_PARAMS_KEY_SCREEN_ORIENTATION, ZIMFacade.ZIM_EXT_PARAMS_VAL_SCREEN_LAND);
    //如需支持活體視頻返回,請指定這一項,并在response.videoFilePath中獲取視頻本地路徑。
    extParams.put(ZIMFacade.ZIM_EXT_PARAMS_KEY_USE_VIDEO, ZIMFacade.ZIM_EXT_PARAMS_VAL_USE_VIDEO_TRUE);
    //如需自定義活體檢測頁面的進度條顏色(默認可不設置),請設置此項,如紅色 #FF0000。
    extParams.put(ZIMFacade.ZIM_EXT_PARAMS_KEY_FACE_PROGRESS_COLOR, "#FF0000");
    zimFacade.verify(verificationToken, true, extParams, new ZIMCallback() {
        @Override
        public boolean response(final ZIMResponse response) {
            if (1000 == response.code) {
                showMessageBox("刷臉通過");
            } else {
                showMessageBox("刷臉失敗([" + response.code + "]" + response.reason + ")");
            }
            return true;
        }
    });
    說明
    • 調用核身認證移動端請求接口返回的verificationToken有效期時間為30分鐘,從verificationToken生成時間開始算起,超過有效期再進行人臉認證會報錯,請在有效期時間內完成認證。

    • ZIMCallback的response回調需要有返回值,默認為true。

  4. 返回結果。

    刷臉認證SDK回調結果中的ZIMResponse類,該類中定義了對應的結果編碼和原因,如下所示:

    /**
     * 刷臉認證回調結果
     */
    public class ZIMResponse {
        /**
         * 返回結果編碼:
         * 1000: 刷臉成功
         * 1001: 系統錯誤
         * 1003: 驗證中斷
         * 2002: 網絡錯誤
         * 2006: 刷臉失敗
         */
        public int code;
        /**
         * 返回結果原因信息
         */
        public String reason;
        /**
         * 結果文案描述,可能為空
         */
        public String msg;
        /**
         * 設備token
         */
        public String deviceToken;
        /**
         * 如果采用視頻返照,這個字段返回視頻的路徑
         */
        public String videoFilePath;
        /**
         * 人臉核身返照照片
         */
        public byte[] bitmap;
    }

    返回結果說明。

    HttpCode

    描述

    1000

    表示刷臉成功,該結果僅供參考,可通過移動端核身認證移動端查詢獲取最終認證結果。

    1001

    表示系統錯誤。

    1003

    表示驗證中斷。

    2002

    表示網絡錯誤。

    2006

    表示刷臉失敗,如需獲取更詳細的失敗原因,可通過移動端核身認證移動端查詢獲取最終認證結果。

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

接口混淆配置

為避免接口混淆,您可以參考以下代碼來保留類名:

-verbose
-keep class com.alipay.face.api.** {*;}
-keep class com.alipay.zoloz.toyger.**{*;}
-keep class com.dtf.face.api.** {*;}
-keep class com.dtf.face.ocr.verify.DTFOcrFacade { *; }
-keep class com.dtf.face.verify.** {*;}
-keep class com.dtf.face.network.model.** {*;}
-keep class com.dtf.face.network.APICallback {*;}
-keep class com.dtf.face.config.**{*;}
-keep class com.dtf.face.log.** {*;}
-keep class com.dtf.face.ui.widget.ToygerWebView {*;}
-keep class com.dtf.toyger.base.** {*;}
-keep class com.dtf.face.network.mpass.biz.model.** { *; }
-keep class faceverify.** { *; }
-keep class ocrverify.** { *; }
 
-keep class com.alipay.alipaysecuritysdk.** { *; }
-keep class com.alipay.deviceid.** { *; }
 
# FastJson Keep
-keep class com.alibaba.fastjson.** {*;}
-keep class org.json.** {*;}