问题描述
我想让用户使用他们的生物识别信息登录我的应用。不过,我知道 Android 设备有多用户功能,您可以在一台设备上注册多个用户。
我不希望同一设备上的其他用户能够登录我的应用,因为他们在设备上注册了指纹。所以我的问题是:指纹(或任何生物识别信息)是否通常与设备相关联,并且当前哪个用户处于活动状态或生物识别信息与设备上的特定用户相关联都无关紧要?
我已经检查了文档,但在这一点上我找不到任何明确的内容。
解决方法
生物识别信息与当前用户相关联,因此不会在其他用户会话中被识别。您可以在模拟器上对此进行测试。
借助生物识别 API,您将使用密码和密钥对令牌或凭据进行加密,将加密数据持久保存到私有模式下的共享首选项,然后能够通过检查生物识别信息来解密这些数据当前用户。
而且由于多用户设备上的应用不共享相同的共享首选项,因此每个用户都可以访问自己的令牌/凭据,并且可以登录自己的帐户,但不能登录其他用户的帐户。