通过 adb 检查 android 设备指纹状态
check android device fingerprint status via adb
我正在使用 appium 自动化 Android 应用程序,我有一个场景需要在可用和不可用的设备上验证指纹。
要获取设备详细信息,如设备 OS 版本、名称等,我正在使用 adb shell 命令,如
adb shell getprop ro.build.version.release
像这样我尝试获取支持指纹的设备的道具,我得到了以下与指纹相关的道具
[ro.bootimage.build.fingerprint]: [google/angler/angler:7.1.2/N2G47O/3852959:user/release-keys]
[ro.vendor.build.fingerprint]: [google/angler/angler:7.1.2/N2G47O/3852959:user/release-keys]
[init.svc.fingerprintd]: [running]
现在需要知道哪个是正确的属性来检查
- 指纹选项是否可用
- 是否启用了指纹设置(我的意思是至少添加了一根手指)
您列出的前两个属性 [ro.bootimage.build.fingerprint] 和 [ro.vendor.build.fingerprint] 与指纹 reader 设备无关,但与 cryptographic fingerprint of the Android disk image 相关引导分区 (ro.bootimage) 和特定于供应商的软件分区 (ro.vendor)。
属性 [init.svc.fingerprintd] 告诉您指纹守护程序 (fingerprintd) 服务 (svc) 的当前状态 (运行)。这个service is needed to enroll fingerprints and perform other operations (see https://source.android.com/security/authentication/fingerprint-hal).
因此您需要到别处寻找一种方法来检查指纹选项是否可用并已设置。 FingerprintManager API 有一个 public 方法 hasEnrolledFingerprints()
可以用来确定是否至少有一个指纹被登记。您可以在应用程序中调用此 API。
从 adb shell,您可能必须直接调用指纹服务,而不是使用 API (Use Android API functions with ADB)。
我正在使用 appium 自动化 Android 应用程序,我有一个场景需要在可用和不可用的设备上验证指纹。
要获取设备详细信息,如设备 OS 版本、名称等,我正在使用 adb shell 命令,如
adb shell getprop ro.build.version.release
像这样我尝试获取支持指纹的设备的道具,我得到了以下与指纹相关的道具
[ro.bootimage.build.fingerprint]: [google/angler/angler:7.1.2/N2G47O/3852959:user/release-keys]
[ro.vendor.build.fingerprint]: [google/angler/angler:7.1.2/N2G47O/3852959:user/release-keys]
[init.svc.fingerprintd]: [running]
现在需要知道哪个是正确的属性来检查
- 指纹选项是否可用
- 是否启用了指纹设置(我的意思是至少添加了一根手指)
您列出的前两个属性 [ro.bootimage.build.fingerprint] 和 [ro.vendor.build.fingerprint] 与指纹 reader 设备无关,但与 cryptographic fingerprint of the Android disk image 相关引导分区 (ro.bootimage) 和特定于供应商的软件分区 (ro.vendor)。
属性 [init.svc.fingerprintd] 告诉您指纹守护程序 (fingerprintd) 服务 (svc) 的当前状态 (运行)。这个service is needed to enroll fingerprints and perform other operations (see https://source.android.com/security/authentication/fingerprint-hal).
因此您需要到别处寻找一种方法来检查指纹选项是否可用并已设置。 FingerprintManager API 有一个 public 方法 hasEnrolledFingerprints()
可以用来确定是否至少有一个指纹被登记。您可以在应用程序中调用此 API。
从 adb shell,您可能必须直接调用指纹服务,而不是使用 API (Use Android API functions with ADB)。