-
-
Notifications
You must be signed in to change notification settings - Fork 520
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cold start on android took 5-10 seconds longer than before the library update #630
Comments
I'm also seeing this after upgrading. Downgrading to 8.1.2 fixes the issue for now. Our users on Google Pixel devices running Android 14 are seeing a delay and the app not responding for 8 to 20 seconds. Here's the ANR stack trace:
And here are some logs, if that's helpful:
|
Also experiencing this as well... In Android 14 on physical devices there's a noticeable delay when calling |
+1 |
We are also experiencing this issue. However, rolling back to version 8.1.2, we encountered the following exception during startup, which version 8.1.3 aims to fix:
It seems that the application still works; we have tested it on a Pixel 7a and a Samsung Galaxy A54. So, we are faced with a choice between a slow startup or an exception during startup. Does anyone have any thoughts on which option is better? |
We are also facing this issue... |
After some testing I think this PR #577 introduced the performance drop. |
@c-goettert, yes I agree. But as I state in my comment above, rolling back the fix you mentioned we get back the exception |
As you can read in the comment on the PR, StrongBox seems to have a poorer performance:
Since we are talking about ~5 seconds more boot time in our case, we have decided against Strongbox. In the old versions, the wrong key-size prevents the use of strongbox and throws the exception. As there is no option to deactivate strongbox, we have modified the |
Thanks for your explanation and patch file, much appreciated @git-user-1337 |
I also applied @git-user-1337 fix and it fixed it for us. Upon launching our app on Pixel phones, the biometric prompt appears promptly. However, successful biometric authentication may take a moment or it failed with the error "java.io.IOException: javax.crypto.IllegalBlockSizeException". The cause was 'Key user not authenticated in Keystore'. What I'm guessing your code fixed was the time for cold bootup for Keystore. The Keystore cold boot time in some cases went upto 13 seconds and overshot the auth validity duration (5 sec) set in (com.oblador.keychain.cipherStorage.CipherStorageKeystoreRsaEcb.java). Because of this, it always expired our Keystore authorization before biometrics could complete successfully. The other possible fix would be to increase the validity duration, however the slow app startup would still NOT be fixed and if user were to close and re-open the app fast enough, it wouldn't ask for biometrics and automatically log-in user which also would be undesirable and weird to the user. It works normally and faster now. Thanks |
I had this problem, everything worked fine 2 weeks ago, I'm trying to figure out what went wrong |
We also experience the issue. Took us quite a long time to track it down. |
Hi, can anyone of you that rolled back (disabled StrongBox) using @git-user-1337 's patch confirm that it is safe to do so for production apps? If a user has saved to keychain using StrongBox will the value still be accessible using TEE after the patch? |
@pwltr I will fix this issue soon and release the official version. I'm working on it ;) |
Awesome, thanks @DorianMazur ! |
@DorianMazur issue still exists with 9.1.0 setGenericPassword takes 9.5 sek on my pixel 7 (Android 14) and in version 8.1.2 it took only 2,4 sek. |
@Brma1048 |
In library version 8.1.3, where the setUserAuthenticationParameters method was changed using KeyProperties.AUTH_BIOMETRIC_STRONG the application started taking much longer to run
The text was updated successfully, but these errors were encountered: