牙叔教程 简单易懂

效果展示

环境

Autojs版本: 9.0.5

Android版本: 10.0.0

MIUI版本: 12.5.1

autojs9没有指纹验证权限, 需要用mt管理器在AndroidManifest.xml中添加权限

android.permission.USE_BIOMETRIC

你将学到以下知识点

  • 指纹验证
  • imgView更换颜色

代码讲解

1. 导入类
importClass("android.hardware.fingerprint.FingerprintManager");
importClass("android.os.CancellationSignal");
importClass("android.graphics.PorterDuff");
2. UI界面
ui.layout(<vertical><text text="指纹验证" margin="0 0 0 10" textColor="#d9000000" textSize="35sp" w="*" gravity="center"></text><texttext="--牙叔教程 简单易懂"margin="0 0 0 10"textColor="#80000000"textSize="25sp"w="*"gravity="center"></text><frame w="*" h="*"><img id="img" layout_gravity="center" src="@drawable/ic_fingerprint_black_48dp" w="100dp" h="100dp"></img></frame></vertical>
);
3. 主逻辑
// 判断设备是否有指纹验证
let r = judgeFingerprintIsCorrect();
if (r) {log("开始指纹验证");let authenticationCallback = createAuthenticationCallback();mManager.authenticate(null, mCancellationSignal, 0, authenticationCallback, null);
}
4. 释放资源
ui.emitter.on("pause", function () {release();
});
function release() {if (mCancellationSignal != null) {mCancellationSignal.cancel();mCancellationSignal = null;}
}
5. 验证回调
function createAuthenticationCallback() {let mSelfCancelled = new FingerprintManager.AuthenticationCallback({onAuthenticationError: function (errorCode, errString) {//多次指纹密码验证错误后,进入此方法;并且,不可再验(短时间)//errorCode是失败的次数toastLog("尝试次数过多,请稍后重试");},onAuthenticationHelp: function (helpCode, helpString) {//指纹验证失败,可再验,可能手指过脏,或者移动过快等原因。toastLog("指纹验证失败");failureEffect(imgView);},onAuthenticationSucceeded: function (result) {toastLog("指纹验证成功");release();engines.myEngine().forceStop();},onAuthenticationFailed: function () {//指纹验证失败,指纹识别失败,可再验,错误原因为:该指纹不是系统录入的指纹。toastLog("指纹验证失败");failureEffect(imgView);},});return mSelfCancelled;
}
6. 判断是否有指纹验证
function judgeFingerprintIsCorrect() {if (!mFingerprintManager.isHardwareDetected()) {toastLog("没有指纹识别模块");return false;} else {log("有指纹识别模块");}if (!mKeyManager.isKeyguardSecure()) {toastLog("没有开启锁屏密码");return false;} else {log("有开启锁屏密码");}if (!mManager.hasEnrolledFingerprints()) {toastLog("没有指纹录入");return false;} else {log("有指纹录入");}return true;
}

名人名言

思路是最重要的, 其他的百度, bing, stackoverflow, 安卓文档, autojs文档, 最后才是群里问问
— 牙叔教程

声明

部分内容来自网络
本教程仅用于学习, 禁止用于其他用途

bilibili

牙叔教程

微信公众号 牙叔教程

QQ群

747748653

完整源码

autojs指纹验证相关推荐

  1. 关于iOS 3D touch 指纹验证的随笔

    file:///Users/OWen/Desktop/3DTouch.png 随着iOS系统不断的更新迭代,苹果总会推出一些新的功能,今天就研究了一下iOS8之后推出的指纹验证的功能,然后写了一个小d ...

  2. 用于指纹验证的C#框架

    目录 介绍 在使用框架之前 运行指纹验证实验 可视化特征 从本框架中匹配指纹 向框架添加新算法 将现有算法集成到框架中 实验结果 结论 参考 在本文中,我们在C#中引入了一个用于指纹验证的框架,我们简 ...

  3. 支付宝指纹服务器暂时用不了,解决支付宝指纹验证失效的问题

    为了提升产品的竞争力,很多手机厂商都会不定期对经典型号提供固件升级服务.但是,很多手机在经历大版本的系统更新后总会出现一些Bug.以华为荣耀8为例,在更新EMUI5.0后,就容易出现支付宝指纹验证失效 ...

  4. 微信小程序调用指纹验证

    微信小程序调用指纹验证共有三个相关的接口 1.wx.checkIsSupportSoterAuthentication() 获取本机支持的 SOTER 生物认证方式 wx.checkIsSupport ...

  5. iPhone 5S及iWatch或将采用指纹验证技术

    关于指纹识别器将出现在iPhone 5S的传言不绝于耳,现在又有报道称该技术还将应用到苹果的iWatch. 在与相关零组件供应商会谈后,纽约Ticonderoga证券公司分析师布莱恩•怀特(Brian ...

  6. 搭建直播带货平台,androidx指纹验证

    搭建直播带货平台,androidx指纹验证实现的相关代码 androidsdk版本大于29之后,使用FingerprintManagerCompat进行指纹验证显示被废弃,FingerprintMan ...

  7. python爬虫 - 猿人学第十九题突破ja3指纹验证

    前言 (来csdn做备份,某客园的审核机制太蛋疼...) 废话不多说,直接干,再来猿人学19题 分析 看了下,没有加密参数: 然后拿着接口直接请求: 有结果的,不会吧,这么简单?没有加密参数?这次这么 ...

  8. android7.0 谷歌拼音,谷歌浏览器在Android 7.0及以上版本支持使用指纹验证进行无密码登录...

    原标题:谷歌浏览器在Android 7.0及以上版本支持使用指纹验证进行无密码登录 来源:蓝点网 此前谷歌已经宣布与 FIDO 联盟达成合作关系并在安卓系统上调用指纹或面部识别等来登录某些支持的网站. ...

  9. uni-app 指纹验证

    次demo 在插件市场找的 链接地址:  https://ext.dcloud.net.cn/plugin?id=358 <template><view><button ...

  10. 为 iOS APP 添加手机密码、指纹验证

    2019独角兽企业重金招聘Python工程师标准>>> 原文  http://my.oschina.net/u/2340880/blog/542221?fromerr=fpdpdLP ...

最新文章

  1. linux下jdk简单配置记录
  2. 【Android 高性能音频】OboeTester 音频性能测试应用 ( Oboe 输出测试参数 | API 选择 | 音频输出设备选择 | 采样率 | 通道 | 采样格式 | 播放偏好 )
  3. nginx配置ssl加密(单双向认证、部分https)
  4. reactjs css modules解决组件间样式覆盖问题
  5. 四、PHP基础——会话技术Cookie 和 Session
  6. 接口 vs 抽象类 的区别
  7. python决策树代码解读_建模分析之机器学习算法(附pythonR代码)
  8. java.util —— 工具类
  9. 关于EasyUI查询功能的二级联动
  10. Android8.1 源码添加黑名单拦截电话和短信记录
  11. 在tomcat下配置jdbc连接池
  12. python数据标注工具_使用Python实现简易的数据标注工具
  13. 谷歌浏览器86版_VMLogin 浏览器1.2.8.0 版本更新公告:全新内核 Chromium 86.0.4240.75 更新说明...
  14. Java之自定义异常类、常用类String、StringBuilder、StringBuffer、时间类和枚举类的学习
  15. linux怎么调显卡风扇速度,Ubuntu下无显示器(服务器)手动调节Nvidia显卡风扇转速...
  16. 日赚1.7亿!华为发布2020年度财报!附华为十大5G应用场景
  17. 电赛初探(一)——正弦波、方波、锯齿波转换
  18. 7-文件IO-阻塞与非阻塞IO
  19. java ext.dirs_关于-Djava.ext.dirs使用问题
  20. ShardingSphere分库分表核心原理精讲第十二节 数据安全和脱敏详解

热门文章

  1. php 查询数据传值,php-如何在Laravel中传递数据进行查看?
  2. linux红帽子怎么配置dhcp,红帽7 配置dhcp服务器
  3. SQL案例分析之部分查询和全部查询
  4. ubuntu服务器设置定时自动开关机
  5. SAP内部订单BAPI扩展字段
  6. 网页源文件代码隐藏的代码(转)
  7. dreamweaver cs6 的破解方法
  8. linux: It seems that scikit-learn has not been built correctly.
  9. 虚拟摄像头之一: android8.1 移植 v4l2loopback 虚拟摄像头
  10. ThreatScan-免费的网站在线安全检测平台_TScan