Android 6.0 (M) 提供了新功能指纹验证。我尝试了这个例子android-FingerprintDialog这是很好的谷歌示例。
一个问题是我正在创建应用程序,就像用户成功通过指纹验证一样,从SQlite数据库
加载用户数据,但FingerprintManager
无法提供任何唯一的指纹身份。如果有人对此有想法,请分享。
最佳答案
我们无法识别谁已通过身份验证。 事实上,Android 6.0 的 Android 兼容性定义在指纹部分 (7.3.10) 中指出:
MUST NOT enable 3rd-party applications to distinguish between individual fingerprints.
Android 指纹方法不提供指纹名称或任何唯一身份。它平等地对待每个注册的指纹,并且仅进行身份验证。 (有效用户或无效用户就是这样)
因此,虽然您可以编写一个使用指纹作为对用户进行身份验证的机制的应用程序,但可以使用与当前用户帐户关联的任何注册指纹。
存储 指纹与设备绑定(bind)(来自 Nexus 常见问题解答):
Your fingerprint data is stored securely and never leaves your device. Your data is not shared with Google or any apps on your device.
因此,应用程序无法访问指纹数据以保存或跨设备使用。
建议: 为了区分多个用户或设备,您应该使用外部指纹扫描仪。有一些与 Android 平台和 Android SDK 兼容的外部指纹扫描仪。这些 SDK 允许注册和验证多个用户。
关于android - Android Fingerprint 是否提供指纹名称或指纹的任何唯一标识?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42068877/