问题标签 [android-fingerprint-api]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Cordova:扫描指纹并保存
我想构建一个扫描用户指纹的应用程序(使用解锁手机的android指纹扫描仪)并保存它。
到目前为止,我只找到了 Cordova 的指纹认证插件,但这不是我想要的。
另外,我怀疑是否要将扫描的指纹保存为图像,或者可能有这样的存储标准?(也许是一些 X/Y 数据等?)
任何帮助将不胜感激。
android - 指纹 API Android
嗨,我是 android 开发的新手。我想在 M(6.0 Marshmallow)和 N(7.0 Nougat)中练习这个指纹 API。但是这个示例Github Sample似乎仅用于在设置指纹时验证当前用户Settings > Security > Fingerprint
。
有没有关于如何从安卓手机保存指纹的教程?
android - 尝试使用指纹解锁 Android 6 设备时,会调用 onPasswordFailed() 方法吗?
我实现了一个扩展DeviceAdminReceiver的接收器,但是当指纹解锁失败时,不会像在其他类型的解锁中那样调用被覆盖的onPasswordFailed()方法。这是想要的行为吗?
android - 指纹传感器高于 6.0 且未使用 Android 指纹 SDK 的设备
我最近在我的应用程序中实现了指纹认证(当然是使用官方 Android 指纹 SDK!),我的一些用户抱怨他们的手机中有指纹传感器(使用 Android 6.0)但无法使用该功能。
我对此进行了一些调查,发现三星 S5 和 Note 4 设备具有 6.0 的指纹传感器,但它们没有使用官方的 Android 指纹 SDK。
我的问题:
- 是否有人拥有使用自己的指纹 SDK 的设备列表。
- 在这种情况下,我想向用户传达应用程序不支持您的设备。有什么可靠的方法可以以编程方式找到这些设备(“具有不支持的指纹传感器的设备,带有 6.0 及更高版本”)并显示消息?
android - 如何在 Android API 23 以下生成密钥和 Chiper 启动?
我正在为应用程序使用指纹身份验证。还想支持 API 23 以下。为此,我正在使用FingerprintManagerCompat。我不知道如何在 Pre-Android API 23 中生成密钥和Chiper 启动。
下面的代码用于 API 23 - 生成密钥
以下代码用于 API 23 - 芯片启动
我不知道如何在 Pre API 23 中启动这两个东西来访问FingerprintManagerCompat,帮我解决这个问题。
android - 如何在指纹认证成功时从密钥库中获取密钥
我正在创建一个应用程序,用户有两个选项来解锁他们的应用程序,一个是使用 pin,另一个是使用指纹。为了使用指纹,他们必须首先设置一个密码,因为这个密码是解密密钥,可以从中获取他们的加密细节SharedPreferences
。
我已经设法让应用程序读取指纹并说出它是否有效。但是当指纹被授权时,我不知道如何从 Android 密钥库中取出该引脚。
下面是一些代码来演示:
KEY_NAME 是我要存储的密钥(pin)(我认为)。
然后在FingerprintHandler
类中有这个方法:
但是我如何从 if 中得到我想要的钥匙result
呢?
android - 如何使用指纹传感器在android中对用户进行身份验证?
我想开发一个使用指纹传感器对用户进行身份验证的应用程序。
我搜索了教程,我找到了一些。
但是我可以为我的应用程序使用特殊的指纹吗?
我的意思是我希望我的应用程序能够保存指纹并在此之后使用它,而不需要使用系统保存和使用的指纹。
可能吗 ?如果是这样,我该怎么做?
android - 设备锁定时的指纹 API 行为
我有一个应用程序,该应用程序具有可以在设备锁定时启动的服务,并且该服务正在启动我的应用程序的活动(即使设备锁定)。在此活动中,我使用 Google 指纹 API 来识别用户。我在两台搭载 Android 6.0.1 的设备(三星 Galaxy S6 和谷歌 LG Nexus 5X)上进行了测试,结果不同:
- 三星 Galaxy S6:在 AuthenticationCallback 的 onAuthenticationError 方法中出现错误 5 或 FINGERRINT_ERROR_CANCELED ( https://developer.android.com/reference/android/hardware/fingerprint/FingerprintManager.html#FINGERPRINT_ERROR_CANCELED )
- Nexus 5X:未获得错误,但无法执行身份验证。无论用户做什么(使用不同的手指,松开手指过快......),都不会启动错误。用户只能取消对话框。
我的问题是:
- 有谁知道为什么这些行为差异?
- 有人知道我们是否可以在设备锁定的情况下使用这种身份验证方法吗?
当两个设备都被解锁以及应用程序处于后台/前台时,相同的服务/活动/身份验证工作流程可以完美运行。
谢谢!
android - 使用自定义服务中的 FingerprintService
背景
我有一个小应用程序,我想在其中添加指纹身份验证。此身份验证仅用于解锁应用程序。
重要的是:
- 该应用程序的要点是作为服务在后台运行。
- 用户必须能够从系统中的任何位置(不仅仅是活动)解锁应用程序。
- 用户必须触摸通知才能启动服务,从而启动指纹认证。
问题
FingerprintService
必须从前台开始Activity
。即使我将服务置于前台,也会startForeground()
发出FingerprintService
警告:
仅当我在应用程序之外(例如,在主屏幕中)触摸通知时,才会发生这种情况。如果我在应用程序中触摸它,则身份验证有效,并且我可以使用我的指纹解锁(因为它Acticity
是聚焦的,在前景中)。
我当前的代码(仅相关部分)
从 中Activity
,显示启动服务的通知:
服务启动后,放到前台启动指纹认证:
问题
如何使用FingerprintService
在前台运行的自定义服务?我知道这是可能的,因为我看到另一个应用程序这样做,所以必须是一种方式。
android - 在带有指纹扫描仪的华为 Android 设备上 createConfirmDeviceCredentialIntent() 不允许指纹解锁
在具有指纹扫描仪(例如 P9)的华为设备上使用 KeyguardManager.createConfirmDeviceCredentialIntent() 时,屏幕仅适用于 PIN/密码,但不允许使用指纹扫描仪解锁。在大多数其他有效的品牌上。这是一个已知的问题?我找不到任何堆栈溢出条目。华为知道这个问题吗?
我知道我可以使用指纹 API,但这种方法从 Android 5.0 开始就可以使用,并且不限于指纹。
https://developer.android.com/reference/android/app/KeyguardManager.html#createConfirmDeviceCredentialIntent(java.lang.CharSequence , java.lang.CharSequence)