[PM-27736] Add FIDO privileged allowlist entry for vivo FIDO client (com.fido.client) #6114
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.

🎟️ Tracking
Community contribution to improve passkey support on vivo devices.
com.fido.clientis the preinstalled vivo FIDO / passkey client on recent OriginOS builds.This PR adds it to the community FIDO privileged allowlist so that Bitwarden can be used as a passkey provider when the system FIDO UI is involved.
📔 Objective
On recent vivo devices (e.g., OriginOS on Android 14), passkey flows that are routed through the system FIDO UI (
com.fido.client) fail with:The objective of this PR is to treat the vivo system FIDO client as a trusted FIDO caller, similar to IronFox Nightly in PR #6046, by adding an entry for
com.fido.client(with its SHA-256 certificate fingerprint) toapp/src/main/assets/fido2_privileged_community.json.This allows Bitwarden to successfully complete passkey registration and authentication when
com.fido.clientmediates the request.📸 Screenshots
Not applicable – no UI changes.
Verification was performed by:
com.fido.client.com.fido.clientwithout the “not on the privileged list” error.⏰ Reminders before review
🦮 Reviewer guidelines
:+1:) or similar for great changes:memo:) or ℹ️ (:information_source:) for notes or general info:question:) for questions:thinking:) or 💭 (:thought_balloon:) for more open inquiry that's not quite a confirmed issue and could potentially benefit from discussion:art:) for suggestions / improvements:x:) or:warning:) for more significant problems or concerns needing attention:seedling:) or ♻️ (:recycle:) for future improvements or indications of technical debt:pick:) for minor or nitpick changes