mirror of
https://github.com/bitwarden/android.git
synced 2026-03-13 21:54:17 -05:00
Bitwarden crashing on biometric unlock #2159
Open
opened 2025-11-26 23:10:27 -06:00 by GiteaMirror
·
31 comments
No Branch/Tag Specified
main
pm-33356/policy-changed-push-sync
premium-upgrade/PM-33508-billing-api-service
PM-30130-remove-archive-feature-flag
sdlc/sdk-update
tooling/improve-review-workflow
PM-32663/update-vault-migration-screens
llm/add-resolving-sdk-updates-skill
QA-1523/sanity-test-saucelabs
release/2026.3-rc48
PM-24380/flight-recorder-redact-hostname
PM-26577-app-links-support
PM-26896-autofill-fix
release/2026.2-rc47
PM-32714/fallback-to-web-vault-host
pr-6572
PM-28834/setting-app-layout-horizonos
vvolkgang/process-release-notes-v2
release/2026.2-rc46
release/2026.1-rc45
PM-30644/added-logs-for-debug
PM-30644/quicktile-nav-not-showing-migration
minor-gradle-updates
release/2026.1-rc42
release/2026.1-rc44
release/2026.1-rc43
PM-28834/set-landscape-on-horizonos-devices
context-rules
devclarity/update-code-review-command
PM-20026/force-ltr-passwords-and-codes
release/2025.12-rc41
cmcg/testCoverage
claude-skill/creating-feature-flags
PM-29014/talkback-support-for-passwords
release/2025.12-rc40
BRE-1305/publish_test
accept-user-certs
autofill-permissions
release/2025.11-rc39
PM-22479/check-all-certificates-validate-asset-links
release/2025.10-rc38
agalles/android-latest
optimize-test-workflows
tier2-test-sharding
retro-agent
PM-27001/skip-account-selection-only-one-exists-cxp
release/2025.10-rc37
agalles/test-1118
release/2025.10-rc36
PM-20593-token-refresh
QA-1126b/adding-native-sanity-test
release/2025.9-rc35
pm-25933/sdk-update-password
release/2025.9-rc34
release/2025.8-rc33
agalles/20250821-release
debug-release-issues
pm-24249-allow-automated-prs-for-sdk-updates
release/2025.8-rc32
release/WORKFLOW-TEST-2025.8-rc28
agalles/20250807release
release/2025.07-rc25
release/hotfix-v2025.7.0-bwa
pm-23311/export-vault-policy-bypass
release/2025.07-rc24
authenticator-pm-sync-flags-issue
ps/implement-sdk-repository-example
release/hotfix-v2025.6.0-bwpm
release/2025.06-rc21
agalles/automate-android-fastlane-patch
release/2025.05-rc20
release/2025.04-rc19
languages/basque
release/2025.03-rc19
update-readme
qrcode/feature
innovation/archive/pm-19153-archive-items
qrcode/2-ui-fields
qrcode/1-page
hold-on-biometric-prompt-alternative
release-notes-process
release/2025.02-rc16
bwa-monorepo
PM-8223/new-device-verification-ux-improvements
pm-18451/exempt-from-policies
test-bwa
cs-workaround-linked-0-copy
release/2025.01-rc15
release/2025.01-rc14
release/2024.12-rc13
pm-16670/sync-leave-notice
821
PM-16695/backport-lean-more-new-device-verification
km/15084-testing
release/hotfix-v2024.11.7
release/2024.11-rc1
pm-11304/collection-add-item-button
PM-14241/disabling-logs-app-crash
poc/offline-editing
new-version-calc
pm-11649/expired-link-services
pm-6702/add-feature-flag
pm-6702/email-verification-feature
pm-9933/marketing-copy-update
pm-6702/registration-flows
update-templates
pm-6701/email-verification-selfhost-registration
v2026.2.1-bwpm
v2026.2.1-bwa
v2026.2.0-bwpm
v2026.2.0-bwa
v2026.1.1-bwa
v2026.1.1-bwpm
temp-test
v2026.1.0-bwpm
v2026.1.0-bwa
v2025.12.1-bwa
v2025.12.1-bwpm
v2025.12.0-bwa
v2025.12.0-bwpm
v2025.11.1-bwpm
v2025.11.1-bwa
v2025.11.0-bwpm
v2025.11.0-bwa
v2025.10.1-bwa
v2025.10.1-bwpm
v2025.10.0-bwa
v2025.10.0-bwpm
v2025.9.1-bwa
v2025.9.1-bwpm
v2025.9.0-bwa
v2025.9.0-bwpm
v2025.8.1-bwa
v2025.8.1-bwpm
v2025.8.0-bwa
v2025.8.0-bwpm
v2025.7.2-bwa
v2025.7.2-bwpm
v2025.7.1-bwa
v2025.7.1-bwpm
v2025.7.0-bwa
v2025.7.0-bwpm
v2025.6.1-bwpm
v2025.6.0-bwa
v2025.6.0-bwpm
v2025.1.0-bwa
v2025.5.0-bwa
v2025.5.0-bwpm
v2025.5.999
2025.4.0
v2025.4.0
untagged-4731eaadac73f3dfbbb8
v2025.3.0
v2025.2.0
untagged-815a165c5d70ffe75bc7
v2025.1.2
v2025.1.1
v2025.1.0
v2024.12.0
untagged-5a76b6392a4c8998c63a
v2024.11.7
v2024.11.6
v2024.11.5
v2024.11.4
v2024.11.3
v2024.11.2
v2024.11.1
v2024.11.0
v2024.10.2
v2024.10.1
v2024.10.0
v2024.9.0
v2024.8.1
v2024.8.0
v2024.7.3
v2024.7.2
v2024.7.1
v2024.7.0
v2024.6.1
v2024.6.0
v2024.5.1
v2024.4.1
v2024.4.2
v2024.4.0
v2024.3.3
v2024.3.1
v2024.3.0
v2024.2.1
v2024.2.0
v2024.1.1
v2024.1.0
v2023.12.0
v2023.10.0
v2023.9.2
maui-single-project-android
v2023.9.1
v2023.9.0
v2023.8.0
v2023.7.0
v2023.5.0
v2023.4.0
v2023.3.2
v2023.3.1
v2023.3.0
v2023.2.0
v2023.1.0
v2022.11.0
v2022.10.0
v2022.9.1
v2022.9.0
v2022.8.0
v2022.6.2
v2022.6.1
v2022.6.0
v2022.05.0
v2.18.0
v2.17.0
v2.16.4
v2.16.3
v2.16.2
v2.16.1
v2.15.0
v2.14.2
v2.14.1
v2.14.0
v2.13.0
v2.12.0
v2.11.3
v2.11.2
v2.11.1
v2.11.0
v2.10.0
v2.9.1
v2.9.0
v2.8.2
v2.8.1
v2.8.0
v2.7.2
v2.7.0
v2.6.1
v2.6.0
v2.5.6
v.2.5.5
v2.5.5
v2.5.4
v2.5.3
v2.5.2
v2.5.1
v2.5.0
v2.4.3
v2.4.2
v2.4.1
v2.4.0
v2.3.1
v2.3.0
v2.2.8
v2.2.7
v2.2.6
v2.2.2
v2.2.1
v2.2.0
v2.1.2
v2.1.0
v2.0.6
v2.0.5
v2.0.4
v2.0.3
v2.0.2
v2.0.1
v2.0.0
v1.22.1
v1.22.0
v1.21.0
v1.20.0
v1.19.0
v1.18.1
v1.18.0
v1.17.0
v1.16.0
v1.15.2
v1.15.1
v1.15.0
v1.14.4
v1.14.1
v1.14.0
v1.13.0
v1.12.2
v1.12.1
v1.12.0
v1.11.1
v1.11.0
v1.10.0
v1.9.0
v1.8.1
v1.8.0
v1.7.0
v1.6.5
v1.6.1
v1.6.0
v1.5.1
v1.5.0
v1.4.4
v1.4.3
v1.4.0
v1.3.0
v1.2.1
v1.2.0
v1.1.0
v1.0.0
v0.0.6
v0.0.5
v0.0.4
v0.0.3
v0.0.2
v0.0.1
Milestone
No items
No Milestone
Projects
Clear projects
No project
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/android#2159
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @NovigradWitcher on GitHub (Jan 31, 2025).
Steps To Reproduce
Expected Result
My vault should unlock.
Actual Result
The app is crashing.
Screenshots or Videos
No response
Additional Context
Might be similar to 4651 & 4650 perhaps?
Anyway, here's a logcat I captured about the crash as well:
FATAL EXCEPTION: main Process: com.x8bit.bitwarden, PID: 20692 javax.crypto.BadPaddingException at android.security.keystore2.AndroidKeyStoreCipherSpiBase.engineDoFinal(AndroidKeyStoreCipherSpiBase.java:630) at javax.crypto.Cipher.doFinal(Cipher.java:2074) at a8.A0.R(Unknown Source:113) at J8.O.invokeSuspend(Unknown Source:43) at Jb.a.resumeWith(Unknown Source:7) at ec.K.run(Unknown Source:109) at ec.X.d0(Unknown Source:23) at ec.l.o(Unknown Source:80) at ec.l.s(Unknown Source:2) at gc.l.a(Unknown Source:6) at gc.j.I(Unknown Source:84) at gc.j.g(Unknown Source:56) at gc.j.p(Unknown Source:107) at Q8.d.i(Unknown Source:2) at J8.x.invoke(Unknown Source:116) at S8.d.invoke(Unknown Source:11) at ma.b.F(Unknown Source:15) at c.o.run(Unknown Source:246) at android.os.Handler.handleCallback(Handler.java:959) at android.os.Handler.dispatchMessage(Handler.java:100) at android.os.Looper.loopOnce(Looper.java:282) at android.os.Looper.loop(Looper.java:387) at android.app.ActivityThread.main(ActivityThread.java:9505) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:600) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1005) Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [t0{Cancelling}@9b8c38, Dispatchers.Main.immediate] Caused by: android.security.KeyStoreException: Invalid argument (internal Keystore code: -38 message: system/security/keystore2/src/operation.rs:847: KeystoreOperation::finish Caused by: 0: system/security/keystore2/src/operation.rs:428: Finish failed. 1: Error::Km(r#INVALID_ARGUMENT)) (public error code: 10 internal Keystore code: -38) at android.security.KeyStore2.getKeyStoreException(KeyStore2.java:416) at android.security.KeyStoreOperation.handleExceptions(KeyStoreOperation.java:79) at android.security.KeyStoreOperation.finish(KeyStoreOperation.java:132) at android.security.keystore2.KeyStoreCryptoOperationChunkedStreamer$MainDataStream.finish(KeyStoreCryptoOperationChunkedStreamer.java:228) at android.security.keystore2.KeyStoreCryptoOperationChunkedStreamer.doFinal(KeyStoreCryptoOperationChunkedStreamer.java:181) at android.security.keystore2.AndroidKeyStoreCipherSpiBase.engineDoFinal(AndroidKeyStoreCipherSpiBase.java:624) ... 25 moreBuild Version
2025.1.1 (Play Store)
What server are you connecting to?
US
Self-host Server Version
No response
Environment Details
Issue Tracking Info
@bitwarden-bot commented on GitHub (Jan 31, 2025):
Thank you for your report! We've added this to our internal board for review.
ID: PM-17812
@vuongvan commented on GitHub (Feb 2, 2025):
I have the same problem. Here is my crash log
@fessmm commented on GitHub (Feb 2, 2025):
I can confirm. Same issue on Samsung Galaxy S24 Ultra with latest oneui 7 beta 3.
@Krychaz commented on GitHub (Feb 3, 2025):
Thanks everyone for providing all the details and logs. This has been passed to our Engineering team
@ohaucke commented on GitHub (Feb 6, 2025):
I have a similar issue, as soon as i add a second account and enable "Unlock with Biometrics" for it.
Steps to reproduce
Result
Try to unlock "Account-A" with my fingerprint = crash
Try to unlock "Account-B" with my fingerprint = Error message
As soon as i remove "Unlock with Biometrics" from one account and reconfigure it for the other one, it works (for that specific account).
Build Version
2025.1.1 (19728) (Play Store)
Environment Details
@ryosoftware commented on GitHub (Feb 11, 2025):
Issue still present at 2025.1.2.
Partial Workarround:
In any case, issue returns when active account changes.
@NovigradWitcher commented on GitHub (Feb 11, 2025):
Can recreate what @kslcsdalsadg said. Issue is temporarily fixed if I login using master password and re-enable unlock using biometrics, and this works. However, for users with two accounts (like me), it's causing issues.
@ndesgranges commented on GitHub (Feb 12, 2025):
On my Samsung Galaxy S22 the issue also occurs with only one account. Re-enabling doesn't fix it. Crashes on fingerprint unlock.
@Br33ce commented on GitHub (Feb 17, 2025):
So, why is this closed? Unfortunately I've got the same problem.
@ndesgranges commented on GitHub (Feb 22, 2025):
@SaintPatrck Could you please reopen this ?@3rico commented on GitHub (Feb 24, 2025):
Same here, have the same problem, with the exact behavior as described by @ohaucke
I'm using Xiaomi Redmi note pro 11 android 13 hyperos1. 0.4
@jehammon commented on GitHub (Feb 27, 2025):
I am also experiencing the same issue, and I have the latest version from Google Play installed. Why is this BUG closed? Or better yet, when will this fix be available?
@parcelcat commented on GitHub (Feb 27, 2025):
Pull request #4696 is supposed to resolve this issue. I assume it was closed for this reason.
@ndesgranges commented on GitHub (Feb 28, 2025):
I believe you are right, ignore my request to reopen this issue. I assumed this PR was in the last release (mainly because it was released after the PR was merged). It is NOT.
So for anyone reading this, please wait for the next release.
@3rico commented on GitHub (Feb 28, 2025):
Looking forward to the next update with the fix
@colinardo commented on GitHub (Mar 7, 2025):
Fix finally included in release 2025.2.0
@ndesgranges commented on GitHub (Mar 10, 2025):
Just tried 2025.2.0 On my Samsung galaxy S22, it is not fixed on my side. The app still crashes on biometric unlock. (It now also crashes when enabling biometrics after disabling)
Could this be re-opened please ?
@phoropter commented on GitHub (Mar 10, 2025):
This is happening to me on 2025.2.0 only in my work profile bitwarden when trying to enable biometrics. I'm on GrapheneOS and used shelter to clone the app over to my work profile. Here is the log:
crash
@ohaucke commented on GitHub (Mar 10, 2025):
I've just tested it on my OnePlus 11 5G (
CPH2449_15.0.0.600(EX01)) with Version2025.2.0 (19883)and for me it's working.First i added biometric login for the second account (first account already had it actived) - works without any isssues
For testing purposes i've disabled biometric login on both accounts, closed everything, started and added biometric to both accounts again - works without any issues
@dm0red commented on GitHub (Mar 12, 2025):
Tested with Pixel 8, Android 15, Bitwarden 2025.2.0 (current on gplay)
Works, but had to relog both accounts and set biometrics again. No biggie though.
@SaintPatrck commented on GitHub (Mar 12, 2025):
Thank you for providing crash details, @phoropter. We've identified the cause of the crash and hope to have a fix in the next release. I'll go ahead and re-open this issue for visibility.
@ndesgranges commented on GitHub (Apr 16, 2025):
Just for information : Still happening on 2025.3.0
@ndesgranges commented on GitHub (May 8, 2025):
Still on 2025.4.0
Is there an easy way for me to provide logs ? There is no section in settings to export logs anymore
@SaintPatrck commented on GitHub (May 9, 2025):
Hi @ndesgranges,
Sorry to hear you're still encountering this issue. Did you happen to try the steps mentioned in this comment?
If those steps don't help, there is a new "Flight Recorder" feature being implemented for capturing logs. It's hidden by a feature flag on dev builds, for now. The flags can be found by tapping 3 times with 3 fingers anywhere in the app, or pressing
SHIFT ~if you have a keyboard attached. You can use the latest dev build from main (apk) without interfering with your production Bitwarden instance.Since this is occurring before you're able to access the usual Settings screen after logging in, you should also turn on the feature flag, "Enable pre-auth settings", from this screen. That flag will cause a new "App Settings" button to appear on the "Add account" screen. Tap it, navigate to "About", enable "Flight recorder", select a duration, then trigger the crash. You can also enable "Submit crash logs" from this screen so the crash gets reported to Firebase.
Any exceptions that are encountered will be written to a log file. Log files can be viewed/shared from "Settings > About > View recorded logs". You can post the logs here, or contact our support team and reference this ticket.
Here is a short video showing how to enable the feature flags and start the flight recorder.
https://github.com/user-attachments/assets/1ba11b71-3d48-48cc-b33a-d40d702c70b8
@ndesgranges commented on GitHub (May 10, 2025):
Thank you for those instructions !!
I did try reinstalling from scratch, emptying datas etc. many times actually.
Also, my issue does not need 2 accounts ! One account, regular profile (not work), I don't even have a work profile on my phone.
Could get logs thanks to your instructions:
Logs v2025.5.0 (20176)
Hope this helps
@dinosmm commented on GitHub (May 21, 2025):
It had been happening for months on an S20+, and now we switched phones and it's still happening on an S25 Ultra.
Not sure if it's exactly the same issue.
In our case, when you use the fingerprint unlock, the app pops you back to the login screen as if it's logs you out. We have to enter email, master pass again (but no 2FA). Enable biometrics again, then it works for a while, but maybe 1 day later it crashes back to login screen again.
Oddly it only happens on my wife's account (on both phones above) but not on my phone (S24 Ultra).
@amibumping commented on GitHub (May 28, 2025):
Happening here after changing rom.
Here I have a log
https://bin.mkr.pw/~683743e4632ce757b626ae18
@phoropter commented on GitHub (May 29, 2025):
This has been fixed for me in my work profile using the v2025.5.0-bwpm release from today.
@tk-Ravi commented on GitHub (May 30, 2025):
In my case, whenever I enable biometric unlock option the app immediately crashes.
I've tried the latest release from GitHub, it didn't worked.
@ndesgranges commented on GitHub (Jun 3, 2025):
Still happening on 2025.5.0
Generated a log with dev build 9287 (commit
a3d2e51)logs
@evenremy commented on GitHub (Jul 25, 2025):
I still have this very annoying bug