设置setDeviceCredentialAllowed(true)后Biometric Prompt按Home键不消失求助
关于Biometric Prompt按Home键异常问题的解决方案
我之前踩过一模一样的坑!这确实是androidx.biometric:biometric:1.0.1版本的已知问题,触发场景就是设置了setDeviceCredentialAllowed(true)后,按下Home键会出现弹窗不消失、同时抛出BiometricPrompt.ERROR_USER_CANCELED错误的异常情况。
给你两个可行的解决方向:
- 优先升级Biometric库版本:官方在1.1.0版本已经修复了这个问题,你只需要把依赖替换成
androidx.biometric:biometric:1.1.0(或更高的稳定版本),亲测升级后再操作Home键,弹窗会正常消失,也不会出现错误回调异常的情况。 - 临时 workaround(不推荐,仅用于无法升级的场景):在
BiometricPrompt.AuthenticationCallback的onAuthenticationError回调中,当收到ERROR_USER_CANCELED错误码时,手动检查应用是否处于后台状态,如果是,就主动关闭相关的弹窗或清理验证流程。不过这个方案只是临时补救,可能会有边缘情况覆盖不到,还是升级库版本最靠谱。
内容的提问来源于stack exchange,提问作者Shanker
相关产品推荐
相关产品推荐

