溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Android開發(fā)人臉識(shí)別登錄功能

發(fā)布時(shí)間:2020-09-23 01:53:20 來(lái)源:腳本之家 閱讀:519 作者:王銀鵬 欄目:移動(dòng)開發(fā)

近來(lái),很多公司的APP都實(shí)現(xiàn)了人臉識(shí)別登錄的功能。今天呢,銀鵬帶大家從頭到尾做一下這個(gè)人臉識(shí)別登錄。

首先呢,我們需要采用一個(gè)擁有人臉識(shí)別算法的平臺(tái),這邊我建議使用虹軟的人臉識(shí)別,因?yàn)槲覀€(gè)人用的就是這個(gè),關(guān)鍵有一點(diǎn)好處,就是免費(fèi)。注冊(cè)鏈接:點(diǎn)擊進(jìn)入注冊(cè)。

注冊(cè)完畢以后,話不多說(shuō),我們進(jìn)入流程。

第一步:在虹軟平臺(tái)創(chuàng)建應(yīng)用

Android開發(fā)人臉識(shí)別登錄功能

Android開發(fā)人臉識(shí)別登錄功能

直接安裝SDK查看激活碼

Android開發(fā)人臉識(shí)別登錄功能

下載虹軟識(shí)別庫(kù)地址:點(diǎn)擊下載識(shí)別庫(kù)

下載好之后進(jìn)行依賴添加:

implementation 'com.github.tyhjh:PermissionUtil:v1.0.5' 
implementation 'com.github.tyhjh:picturePickUtil:v1.0.6' 
implementation project(':arclibrary')

接下來(lái)進(jìn)入步驟詳解:

第一步:初始化,在Application里進(jìn)行:

private void initArcFace() {
  new AcrFaceManagerBuilder().setContext(this)
    .setFreeSdkAppId(Constants.FREESDKAPPID)
    .setFdSdkKey(Constants.FDSDKKEY)
    .setFtSdkKey(Constants.FTSDKKEY)
    .setFrSdkKey(Constants.FRSDKKEY)
    .setLivenessAppId(Constants.LIVENESSAPPID)
    .setLivenessSdkKey(Constants.LIVENESSSDKKEY)
    .create();
 }

溫馨提示:Constants為存儲(chǔ)虹軟信息的常量類,主要存放APPID等信息,這些信息在查看激活碼里面有。

public class Constants {
 public static String FREESDKAPPID = "ELVF52xrBj21FKQxXygS6HvkdoMzeUVaAcBDtLa1vu4F";
 public static String FDSDKKEY = "59nZG5b13BNroFAyvMW74PEMD5Ke5ieWiZK1n6YVTEoe";
 public static String FTSDKKEY = "59nZG5b13BNroFAyvMW74PEE3g4RPbX4UPAn1XV7Hcra";
 public static String FRSDKKEY = "59nZG5b13BNroFAyvMW74PEqrgNHG1iZPTi78m1mctQt";
 public static String IDCARDAPPID = "ELVF52xrBj21FKQxXygS6HvkdoMzeUVaAcBDtLa1vu4F";
 public static String IDCARDSDKKEY = "";
 public static String LIVENESSAPPID = "ELVF52xrBj21FKQxXygS6HvkdoMzeUVaAcBDtLa1vu4F";
 public static String LIVENESSSDKKEY = "59nZG5b13BNroFAyvMW74PEMD5Ke5ieWiZK1n6YVTEoe";
}

有些需要下載arc文件里的代碼,這是下載地址:點(diǎn)擊下載arc代碼【主要業(yè)務(wù)邏輯我這邊都放在LivenessActivity里】

人臉識(shí)別注冊(cè)

 LivenessActivity.flag = 1;
 startActivity(new Intent(MainActivity.this, LivenessActivity.class));

人臉識(shí)別登錄

LivenessActivity.flag = 2;
startActivity(new Intent(MainActivity.this, LivenessActivity.class));

以上只是本地注冊(cè)和登錄,咱們需要和服務(wù)端進(jìn)行交互,那么注冊(cè)時(shí),就要 綁定faceId,對(duì)faceId進(jìn)行存儲(chǔ),當(dāng)用戶對(duì)人臉識(shí)別開啟后,進(jìn)行本地人臉識(shí)別登錄校驗(yàn),成功后,請(qǐng)求刷臉登錄接口。

人臉識(shí)別,有的朋友so庫(kù)找不到,應(yīng)該是與其依賴的第三方中的架構(gòu)產(chǎn)生沖突,解決辦法如下,指定架構(gòu)方式,在app下,android,defaultConfig下:

ndk {
   //選擇要添加的對(duì)應(yīng)cpu類型的.so庫(kù)。 // 還可以添加 'x86', 'x86_64', 'mips', 'mips64'
   abiFilters 'armeabi-v7a' //'armeabi-v7a', 'arm64-v8a'
   moduleName "app"
  }
  sourceSets {
   main {
    jniLibs.srcDirs = ['src/main
bs']//指定你的libs路徑
   }
  }

人臉識(shí)別demo下載體驗(yàn):

鏈接:

https://pan.baidu.com/s/1EP6qnF-KN1gZo0r0RAGhQA

提取碼: fya2

總結(jié)

以上所述是小編給大家介紹的Android開發(fā)人臉識(shí)別登錄功能,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)億速云網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI