[向前一小步]Android简单实现指纹识别登录

这篇具有很好参考价值的文章主要介绍了[向前一小步]Android简单实现指纹识别登录。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

指纹识别在Android的开发中可以说是不怎么常见,但是Google对于生物识别缺失很重视,显示废弃了以往的Android6.0推出的FingerprintManager ,后针对Android9.0以上更新推出了BiometricPrompt。

Android指纹识别的应用场景其实还算挺多,只不过区别于ios系统,Android手机的硬件都是由各厂商生产的,手机档次也参差不齐,对于指纹开发来说还需要适配进行,显得比较麻烦,但针对于一些小型app开发或者是某个应用场景的特殊性以及某app指纹的必要性如指纹支付,指纹登录来说是非常重要的,接下来我们实现一个简单的指纹验证登录案例

1.引入依赖

implementation "androidx.biometric:biometric:1.1.0"

2.编写布局代码

编写main_layout.xml相关布局代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">


    <Button
        android:id="@+id/but"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="指纹识别"
        android:layout_gravity="center"/>



</LinearLayout>

3.使用androidx BiometricPrompt实现指纹验证功能”

在BiometricPrompt的使用中,因为它是针对api29,Android10升级的生物识别,所以无需再判断Androd版本api,直接引入应用即可

public class MainActivity extends AppCompatActivity {
  private Button button;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initfinger();
    }

    private void initfinger() {
        button=findViewById(R.id.but);
        //指纹登录点击事件
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                BiometricPrompt.PromptInfo promptInfo=new BiometricPrompt.PromptInfo.Builder()
                        .setTitle("指纹登录")
                        .setDescription("用户指纹验证")
                        .setNegativeButtonText("取消")
                        .build();
                getprompt().authenticate(promptInfo);
            }
        });
    }

    //我这里写了一个方法,也可以不写,直接把这个里面的代码放在上面的点击事件里也是可以的
    private BiometricPrompt getprompt(){
        Executor executor = ContextCompat.getMainExecutor(this);
        BiometricPrompt.AuthenticationCallback callback=new BiometricPrompt.AuthenticationCallback() {
            //指纹验证错误
            @Override
            public void onAuthenticationError(int errorCode, @NonNull CharSequence errString) {
                super.onAuthenticationError(errorCode, errString);
                Toast.makeText(MainActivity.this,errString.toString(), Toast.LENGTH_SHORT).show();
            }
            //指纹验证成功
            @Override
            public void onAuthenticationSucceeded(@NonNull BiometricPrompt.AuthenticationResult result) {
                super.onAuthenticationSucceeded(result);
                Toast.makeText(MainActivity.this, "指纹验证成功", Toast.LENGTH_SHORT).show();
                Intent intent = new Intent(MainActivity.this, MainActivity2.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                startActivity(intent);
            }
            //指纹验证失败
            @Override
            public void onAuthenticationFailed() {
                super.onAuthenticationFailed();
                Toast.makeText(MainActivity.this,"指纹验证失败", Toast.LENGTH_SHORT).show();
            }
        };
        BiometricPrompt biometricPrompt=new BiometricPrompt(this,executor,callback);
        return  biometricPrompt;
    }


}

简单说明下,就是利用BiometricPrompt去进行指纹验证,在getprompt中监听回掉验证返回结果,进行页面的跳转。

4.最终效果图

android 指纹登录,android,android studio,ide

 文章来源地址https://www.toymoban.com/news/detail-635787.html

到了这里,关于[向前一小步]Android简单实现指纹识别登录的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python opencv 深度学习 指纹识别算法实现 计算机竞赛

    🔥 优质竞赛项目系列,今天要分享的是 🚩 python opencv 深度学习 指纹识别算法实现 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分 工作量:4分 创新点:4分 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐! 🧿 更多资料, 项目分享: https://gitee.com/d

    2024年02月06日
    浏览(63)
  • 计算机竞赛 python opencv 深度学习 指纹识别算法实现

    🔥 优质竞赛项目系列,今天要分享的是 🚩 python opencv 深度学习 指纹识别算法实现 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分 工作量:4分 创新点:4分 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐! 🧿 更多资料, 项目分享: https://gitee.com/d

    2024年02月13日
    浏览(78)
  • 指纹识别综述(4): 指纹匹配

    本文会不定期更新,以反映一些新的进展和思考。 我读博期间放假回老家,村里的大爷问我研究什么。我说研究指纹识别。大爷诧异道,把两个指纹摞在一起,比一比,不就可以了?有什么好研究的?大爷就是大爷,一句话击中要害。指纹识别就两步,首先对齐指纹,然后判

    2023年04月26日
    浏览(56)
  • 指纹识别综述(9): 指纹系统安全

    本文主要基于《Handbook of Fingerprint Recognition》第三版第九章“Securing Fingerprint Systems”的内容。本文会不定期更新,以反映一些新的进展和思考。 指纹识别系统的主要目的是提供识别或验证个人身份的机制。然而就像任何系统一样,指纹系统也会出现安全故障。指纹系统常见的

    2024年02月05日
    浏览(52)
  • 指纹识别综述(2): 指纹传感器

    本文主要基于《Handbook of Fingerprint Recognition》第三版第二章“Fingerprint Sensing”的内容。本文会不定期更新,以反映一些新的进展和思考。 指纹识别系统利用传感器、图像处理、模式识别技术自动识别两个指纹是否一致。指纹识别系统主要有三个模块,分别为指纹采集模块、特

    2024年02月05日
    浏览(58)
  • 【老生谈算法】基于matlab的指纹处理和识别算法详解及程序源码——指纹识别算法

    大家好,今天给大家介绍基于matlab的指纹处理和识别程序项目设计与原理。 文章目录: 文件列表: main.m--------主程序。 imgread.m-----图像读取函数。 imgchg.m------将真彩色图像转换为灰度图像的函数。 imgcut.m------图像分割函数。 imgflt.m------图像去噪滤波。 imgdir.m------计算方向图

    2024年02月05日
    浏览(51)
  • 指纹识别(二)—— 光学指纹场景使用OLED HBM功能

    指纹系列文章: 指纹识别(一)—— 电容式、光学式、超声波式介绍 指纹识别(二)—— 光学指纹场景使用OLED HBM功能 目前,背光高亮分为局部高亮和全局高亮,其中,全局高亮的亮度高而且稳定,使得指纹识别成功率比局部高亮的识别成功率高。但是,全局高亮也存在一

    2024年02月09日
    浏览(99)
  • 指纹识别描述

      指纹由于其终身不变性、唯一性和方便性, 几乎已成为生物特征识别的代名 词。通常我们说的指纹就是人的手指末端正面皮肤上凸凹不平的纹线,纹线规律地排列  形成不同的纹型。而本节所讲的指纹是指网站 CMS   指 纹识别、计算机操作系统及 W  eb    容器的指纹识别

    2024年02月19日
    浏览(49)
  • 指纹识别q

    FTIR(Frustrated Total Internal Reflection),受抑全内反射。在屏幕的夹层中加入LED光线,当用户按下屏幕时,使夹层的光线造成不同的反射效果,感应器接收光线变化而捕捉用户的施力点。 明显的缺点:体积太大。薄膜晶体管TFT( Thin Film Transistor)是目前制造大型LCD面板的成熟且廉

    2023年04月17日
    浏览(41)
  • 渗透测试 | 指纹识别

    0x00 免责声明         本文仅限于学习讨论与技术知识的分享,不得违反当地国家的法律法规。对于传播、利用文章中提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,本文作者不为此承担任何责任,一旦造成后果请自行承担!            

    2024年02月07日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包