Android 6.0 (M) 提供了指纹认证的新功能。我试过这个例子android-FingerprintDialog这是很好的谷歌样本。
一个问题是我正在创建应用程序,就像一旦用户成功通过指纹验证加载用户数据,SQlite Database
但FingerprintManager
无法提供指纹的任何唯一身份。如果有人对此有想法,请分享。
Android 6.0 (M) 提供了指纹认证的新功能。我试过这个例子android-FingerprintDialog这是很好的谷歌样本。
一个问题是我正在创建应用程序,就像一旦用户成功通过指纹验证加载用户数据,SQlite Database
但FingerprintManager
无法提供指纹的任何唯一身份。如果有人对此有想法,请分享。
我们无法确定谁已通过身份验证。事实上,Android 6.0 的 Android 兼容性定义在指纹部分 (7.3.10) 中声明:
不得启用第 3 方应用程序来区分各个指纹。
Android指纹方法不提供指纹名称或任何唯一身份。它平等地对待每个注册的指纹,只进行身份验证。(有效用户或无效用户就是这样)
因此,虽然您可以编写一个使用指纹作为验证用户的机制的应用程序,但可以使用与当前用户帐户关联的任何已注册指纹。
存储 指纹与设备相关联(来自 Nexus FAQ):
您的指纹数据被安全存储,永远不会离开您的设备。您的数据不会与 Google 或您设备上的任何应用共享。
因此,应用程序无法访问指纹数据以保存或跨设备使用。
建议:为了区分多个用户或设备,您应该使用外部指纹扫描仪。有一些外部指纹扫描仪与 Android 平台和 Android SDK 兼容。这些 SDK 允许注册和验证多个用户。
您无法从 android Fingerprint API 获取指纹模板或图像。指纹数据由安卓系统存储在安全的地方,即使在有根设备中也无法访问。
将验证部分留给 api android 本身。