我有一个应用程序,该应用程序可以在设备锁定时可以启动,并且该服务正在启动我的应用程序的活动(即使设备已锁定)。在此活动中,我正在使用Google指纹API来识别用户。我在两个设备中使用Android 6.0.1(Samsung Galaxy S6和Google LG Nexus 5X)进行了测试,结果不同:
- 三星Galaxy S6:获取错误5或FINFERRINT_ERROR_CANCELED(https://developer.android.com/reference/reference/RANDROID/HARDWARE/HARDWARE/FINGERPRINT/FINGERPRINT/FINGERPRINT.HTML#FINGERPRINTPRINTPRINTPRINT_ERROR_CANTEROR_CCANTERED)
- Nexus 5X:未获得错误,但不能执行身份验证。无论用户做什么(使用其他手指,将手指释放得太快...),都不会启动错误。用户只能取消对话框。
我的问题是:
- 有人知道为什么这些行为差异吗?
- 有人知道我们是否可以将这种身份验证方法与设备锁定?
当两个设备解锁时,当应用在背景/前景中时,相同的服务/活动/身份验证工作流程正常工作。
谢谢!
在调用身份验证方法之前,引入了1秒的延迟(使用Handler.postdelayed),为我工作