Fixed
Status Update
Comments
cu...@google.com <cu...@google.com>
cu...@google.com <cu...@google.com> #2
Currently looking into this, but it would be helpful if you could provide a bit more info to make sure we're on the right track. At minimum, could you confirm the device and Android OS version(s) on which you were able to repro this issue?
te...@gmail.com <te...@gmail.com> #3
It is not device specific. I can reproduce this with robolectric test with sdk 28. The problem is with androidx.biometric.FingerprintHelperFragment and onAuthenticationError method. If error falls to last else branch then there is no dimiss called
cu...@google.com <cu...@google.com>
ap...@google.com <ap...@google.com> #4
Project: platform/frameworks/support
Branch: androidx-master-dev
commit d3452de146b3ecd2173550fcbe2271d98c536f3f
Author: Curtis Belmonte <curtislb@google.com>
Date: Fri Nov 01 16:36:09 2019
Ensure fingerprint dialog always dismissed on error
Currently, if FingerprintHelperFragment receives an error other than
ERROR_CANCELED or ERROR_LOCKOUT/ERROR_LOCKOUT_PERMANENT, it fails to
trigger the error callback to dismiss the dialog before the helper
fragment is cleaned up. This commit fixes this issue by moving the call
to cleanup() into the Runnable that's posted in this case. It also adds
a test case to FingerprintHelperFragmentTest to exercise this behavior.
Test: ./gradlew biometric:connectedAndroidTest
Fixes: 143683687
Change-Id: Ibe1ef02dd64e3fe2dac11496560241a1a3e7b735
M biometric/src/androidTest/java/androidx/biometric/FingerprintHelperFragmentTest.java
M biometric/src/main/java/androidx/biometric/FingerprintHelperFragment.java
https://android-review.googlesource.com/1159086
Branch: androidx-master-dev
commit d3452de146b3ecd2173550fcbe2271d98c536f3f
Author: Curtis Belmonte <curtislb@google.com>
Date: Fri Nov 01 16:36:09 2019
Ensure fingerprint dialog always dismissed on error
Currently, if FingerprintHelperFragment receives an error other than
ERROR_CANCELED or ERROR_LOCKOUT/ERROR_LOCKOUT_PERMANENT, it fails to
trigger the error callback to dismiss the dialog before the helper
fragment is cleaned up. This commit fixes this issue by moving the call
to cleanup() into the Runnable that's posted in this case. It also adds
a test case to FingerprintHelperFragmentTest to exercise this behavior.
Test: ./gradlew biometric:connectedAndroidTest
Fixes: 143683687
Change-Id: Ibe1ef02dd64e3fe2dac11496560241a1a3e7b735
M biometric/src/androidTest/java/androidx/biometric/FingerprintHelperFragmentTest.java
M biometric/src/main/java/androidx/biometric/FingerprintHelperFragment.java
Description
- Device type:
- OS version:
- Biometric library version: 1.0.0-rc02
STEPS TO REPRODUCE
[Be as specific as possible please]
Write robolectric test
1. Show BiometricPrompt
2. Invoke onAuthenticationError(BiometricPrompt.ERROR_HW_UNAVAILABLE, "some message")
EXPECTED RESULTS
prompt should be dismissed because no further authentication can take place
OBSERVED RESULTS
prompt is not dismissed