前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android开发人脸识别登录功能

Android开发人脸识别登录功能

作者头像
砸漏
发布2020-10-16 10:51:24
2.7K0
发布2020-10-16 10:51:24
举报
文章被收录于专栏:恩蓝脚本恩蓝脚本

近来,很多公司的APP都实现了人脸识别登录的功能。今天呢,银鹏带大家从头到尾做一下这个人脸识别登录。

首先呢,我们需要采用一个拥有人脸识别算法的平台,这边我建议使用虹软的人脸识别,因为我个人用的就是这个,关键有一点好处,就是免费。注册链接:点击进入注册。

注册完毕以后,话不多说,我们进入流程。

第一步:在虹软平台创建应用

ÔÚÕâÀï²åÈëͼƬÃèÊö
ÔÚÕâÀï²åÈëͼƬÃèÊö
ÔÚÕâÀï²åÈëͼƬÃèÊö
ÔÚÕâÀï²åÈëͼƬÃèÊö

直接安装SDK查看激活码

ÔÚÕâÀï²åÈëͼƬÃèÊö
ÔÚÕâÀï²åÈëͼƬÃèÊö

下载虹软识别库地址:点击下载识别库

下载好之后进行依赖添加:

代码语言:javascript
复制
implementation 'com.github.tyhjh:PermissionUtil:v1.0.5' 
implementation 'com.github.tyhjh:picturePickUtil:v1.0.6' 
implementation project(':arclibrary')

接下来进入步骤详解:

第一步:初始化,在Application里进行:

代码语言:javascript
复制
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为存储虹软信息的常量类,主要存放APPID等信息,这些信息在查看激活码里面有。

代码语言:javascript
复制
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文件里的代码,这是下载地址:点击下载arc代码【主要业务逻辑我这边都放在LivenessActivity里】

人脸识别注册

代码语言:javascript
复制
 LivenessActivity.flag = 1;
 startActivity(new Intent(MainActivity.this, LivenessActivity.class));

人脸识别登录

代码语言:javascript
复制
LivenessActivity.flag = 2;
startActivity(new Intent(MainActivity.this, LivenessActivity.class));

以上只是本地注册和登录,咱们需要和服务端进行交互,那么注册时,就要 绑定faceId,对faceId进行存储,当用户对人脸识别开启后,进行本地人脸识别登录校验,成功后,请求刷脸登录接口。

人脸识别,有的朋友so库找不到,应该是与其依赖的第三方中的架构产生冲突,解决办法如下,指定架构方式,在app下,android,defaultConfig下:

代码语言:javascript
复制
ndk {
   //选择要添加的对应cpu类型的.so库。 // 还可以添加 'x86', 'x86_64', 'mips', 'mips64'
   abiFilters 'armeabi-v7a' //'armeabi-v7a', 'arm64-v8a'
   moduleName "app"
  }
  sourceSets {
   main {
    jniLibs.srcDirs = ['src/main
bs']//指定你的libs路径
   }
  }

人脸识别demo下载体验:

链接:

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

提取码: fya2

总结

以上所述是小编给大家介绍的Android开发人脸识别登录功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对ZaLou.Cn网站的支持! 如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
人脸识别
腾讯云神图·人脸识别(Face Recognition)基于腾讯优图强大的面部分析技术,提供包括人脸检测与分析、比对、搜索、验证、五官定位、活体检测等多种功能,为开发者和企业提供高性能高可用的人脸识别服务。 可应用于在线娱乐、在线身份认证等多种应用场景,充分满足各行业客户的人脸属性识别及用户身份确认等需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档