WAI
Status Update
Comments
ku...@gmail.com <ku...@gmail.com> #2
I have also experienced similar issue, only difference is that when Fingerprint dialog pops up, I am hitting the device home screen to put the app in the background. Upon relaunch I see the same error thrown!
si...@gmail.com <si...@gmail.com> #3
Is this issue is fixed or any sort of work around? Because i can wait but clients don't. :)
la...@gmail.com <la...@gmail.com> #4
Go to the function onAuthenticationError() in FingerprintUiHelper.java and comment the following instruction: showError(errString);
Not a good solution, but a quick one!
Not a good solution, but a quick one!
se...@gmail.com <se...@gmail.com> #5
any word on this?
je...@gmail.com <je...@gmail.com> #6
Facing the exact same problem
ar...@google.com <ar...@google.com> #7
Can you please provide the below requested information to better understand the issue:
Steps to reproduce
Please provide source code or apk of a sample application to reproduce the issue.
Also kindly mention the steps to be followed for reproducing the issue with the given sample application.
Frequency
How frequently does this issue occur? (e.g 100% of the time, 10% of the time)
Expected output
Could you please explain the expected behavior.
Current output
Could you please explain the current behavior.
Steps to reproduce
Please provide source code or apk of a sample application to reproduce the issue.
Also kindly mention the steps to be followed for reproducing the issue with the given sample application.
Frequency
How frequently does this issue occur? (e.g 100% of the time, 10% of the time)
Expected output
Could you please explain the expected behavior.
Current output
Could you please explain the current behavior.
jo...@gmail.com <jo...@gmail.com> #8
Steps to reproduce
https://developer.android.com/samples/FingerprintDialog/index.html
Open the app in a state where the fingerprint is requested.
Turn off the screen.
Frequency
100%
Expected output
The app's onPause() method is called to stop listening to the fingerprint reader.
Current output
The fingerprint reader is throwing an error before the onPause() method is called. The error details are: onAuthenticationError() is called with error message id 5 and the string: "Fingerprint operation canceled.".
Open the app in a state where the fingerprint is requested.
Turn off the screen.
Frequency
100%
Expected output
The app's onPause() method is called to stop listening to the fingerprint reader.
Current output
The fingerprint reader is throwing an error before the onPause() method is called. The error details are: onAuthenticationError() is called with error message id 5 and the string: "Fingerprint operation canceled.".
ar...@google.com <ar...@google.com> #9
We have shared this with our engineering team and will update this issue with more information as it becomes available.
[Deleted User] <[Deleted User]> #10
This issue is not reproducible on all devices. The Samsung Galaxy S6 doesn't return this error whereas the Pixel XL emulator does.
dn...@google.com <dn...@google.com> #11
We can't make guarantees of the timing without slowing down the transition to keyguard.
The activity should continue to observe FINGERPRINT_ERROR_CANCELED and tolerate it if it happens outside of the expected activity life cycle.
This is working as intended.
The activity should continue to observe FINGERPRINT_ERROR_CANCELED and tolerate it if it happens outside of the expected activity life cycle.
This is working as intended.
mi...@gmail.com <mi...@gmail.com> #12
I have another problem which continues this one: once I switch screen on, return to app and call authenticate again it got cancelled automatically within half a second with the same FINGERPRINT_ERROR_CANCELED code.
Opening/closing activity:
1. Call authenticate() in onResume() - fingerprint works
2. Call cancel() in onPause() - fingerprint manager sends FINGERPRINT_ERROR_CANCELED
3. Call authenticate() in onResume() - fingerprint works again
Switching screen off/on:
1. Call authenticate() in onResume() - fingerprint works
2. Switch screen off - fingerprint manager sends FINGERPRINT_ERROR_CANCELED
3. Call cancel() in onPause() - nothing happens
4. Switch screen on - nothing happens
5. Call authenticate() in onResume() - fingerprint manager sends FINGERPRINT_ERROR_CANCELED, nothing is working
I've tried calling cancel() in FINGERPRINT_ERROR_CANCELED handler, tried to not to call cancel() in onPause(), nothing works.
The only workaround that worked for me is to post authenticate() to the end of the message queue in onResume()
Reproducible on API 28 emulator.
Opening/closing activity:
1. Call authenticate() in onResume() - fingerprint works
2. Call cancel() in onPause() - fingerprint manager sends FINGERPRINT_ERROR_CANCELED
3. Call authenticate() in onResume() - fingerprint works again
Switching screen off/on:
1. Call authenticate() in onResume() - fingerprint works
2. Switch screen off - fingerprint manager sends FINGERPRINT_ERROR_CANCELED
3. Call cancel() in onPause() - nothing happens
4. Switch screen on - nothing happens
5. Call authenticate() in onResume() - fingerprint manager sends FINGERPRINT_ERROR_CANCELED, nothing is working
I've tried calling cancel() in FINGERPRINT_ERROR_CANCELED handler, tried to not to call cancel() in onPause(), nothing works.
The only workaround that worked for me is to post authenticate() to the end of the message queue in onResume()
Reproducible on API 28 emulator.
Description
In the case the user is in the login screen with the fingerprint reader waiting for input, and clicks the power button to turn off the screen, the fingerprint reader will call onAuthenticationError() with error message id 5 and the string: "Fingerprint operation canceled.". Only after that error is thrown, the application will start with the normal life-cycle calling onPause().
I would expect to have the onPause() method called by the system first, so the activity can have a chance to stop listening to the fingerprint reader before the system throws an error of being inaccessible.
I reiterate, this only happens if the activity is in the foreground listening to the fingerprint reader and the user clicks the power button to turn off the screen.
There is no relevant code to be shared, it is pretty much the same as the code in the FingerprintDialog sample (
Android version: 6.0.1
Device: LG Nexus 5X