Android 厂家自带指纹/人脸。 ID SDK

Android Manufacturers with its own fingerprint / face . id SDK

我正在开发一个使用指纹或面部 ID 来验证用户身份的应用程序。

自 6.0 Marshmellow 起,Android 包含 API 以简化指纹传感器的实施。

是否有与此 API 不兼容的所有设备的列表?要么是因为它们是在 6.0 之前开发的,要么是因为它们的 OEM 仍然不想使用 Google API.

或者如何知道如何支持最大数量的设备?

万一有人想知道,唯一属于这个的设备是:

Samsung Galaxy S5
Samsung Galaxy S5 mini
Samsung Galaxy S5 plus
Samsung Galaxy Note 4
Samsung Galaxy Note Edge

所有都是三星的,可以使用已弃用 Pass SDK 进行验证。

在宣布 Android M 后,所有带有指纹传感器的制造设备都与 Google 指纹 API 兼容。

此外,所有具有面部解锁功能的设备都与 Google Pie 生物识别技术 API 兼容,并且没有任何 OEM 开发了自己的 SDK。

这个答案分为两个部分。

第一部分

FingerprintManager API was introduced in API23 (M), that later updated to API23 may or may not be eligible to integrate with parts of the FingerprintManager API, which has specific security requirements. Namely, biometric matching must 之前集成指纹传感器的设备在安全环境中执行,例如 TEE。

在不符合要求的设备上,KeyStore 操作(例如 FingerprintManager#authenticate(CryptoObject) will fail in certain ways, such as UserNotAuthenticatedException 尝试使用密钥时,即使在身份验证 "successful" 之后也是如此。

第二部分

为支持最大设备数,建议使用androidx.biometric library. On devices before the framework's BiometricManager/BiometricPrompt APIs were introduced, it will internally invoke FingerprintManager and show a support version of a system dialog. On newer APIs where BiometricManager/BiometricPrompt exist, it invokes the system/OEM's implementation of the API. OEMs are allowed to integrate biometrics that meet the various CDD requirements

此外,它遵循 androidx 发布时间表,与平台相比,它可以更快地修复错误(例如每周而不是每年)