mirror of
https://github.com/bitwarden/android.git
synced 2026-03-24 23:32:29 -05:00
iOS keyboard AutoFill disregards URI #1388
Closed
opened 2025-11-26 22:47:06 -06:00 by GiteaMirror
·
14 comments
No Branch/Tag Specified
main
BWA-238-authenticator-sync-migration
clean-up-root-nav
sdlc/sdk-update
android-collections
PM-30130-remove-archive-feature-flag
PM-34042-preview-attachments-update
PM-32721-sort-password-history
llm/skill-refinements
release/2026.3-rc49
PM-24380/flight-recorder-redact-hostname
cx/android-architect-agent
llm/add-resolving-sdk-updates-skill
QA-1523/sanity-test-saucelabs
release/2026.3-rc48
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
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
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.3.0-bwpm
v2026.3.0-bwa
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#1388
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 @bobfatherx on GitHub (Dec 11, 2021).
Steps To Reproduce
Expected Result
AutoFill suggestion should use the URI match to suggest the matching login credentials.
Actual Result
AutoFill suggestion ignores URI and suggests the login credentials of the first alphabetical Bitwarden item with a matching host. However, clicking the key invokes the Bitwarden pop up that properly matches the subdomain. See photo examples.
Screenshots or Videos
Keyboard AutoFill displaying bw.FQDN.space instead of blueiris.FQDN.space because in the vault, accordingly, the items are named ‘Home - Bitwarden’ and ‘Home - Blue Iris’

Clicking the Bitwarden key pops up the correct site, as does using the iOS share sheet (thanks for fixing the share sheet access in the recent update!)

Additional Context
No response
Operating System
iOS
Operating System Version
15.1
Device
iPad, iPhone
Build Version
Version: 2.15.0 (1225)
Beta
@guyyst commented on GitHub (Jan 17, 2022):
I'm not sure what your exact setup is, but after playing around with different configurations for a while I think I know what's happening. It seems like the iOS autofill is only looking at the first URI for any login entry.
When I set up
myFQDN.com,site1.myFQDN.comandsite2.myFQDN.comwith the respective URIs and 'starts with' match detection at the first URI position, everything works fine. I get the immediate suggestion of the correct login that only requires one tap to continue: https://i.imgur.com/KdU0al5.pngBut when, for example, I set up the
site1.myFQDN.comlogin withhttps://site1.myFQDN.comas the second URI entry and something else as the first, iOS doesn't immediately match the login.Again, I tested this as much as I could with my setup and haven't confirmed this suspicion by looking at the code.
@bobfatherx commented on GitHub (Jan 17, 2022):
Thanks for playing around with it. I can also confirm that my issue appears to have stemmed from the first URI being for an internal IP and the second URI being for a reverse proxied host. After moving the reverse proxy host to the first URI position, sites now populate the correct login from the iOS keyboard pop up.
@guyyst commented on GitHub (Jan 17, 2022):
Yeah same here. It's not a perfect solution since I now don't get an automatic completion on iOS for the internal IP, but since I hardly ever access that after setting up the proxy it's fine.
@snab43 commented on GitHub (Feb 20, 2022):
Currently having this issue with localhost:port. I have a server on http://192.168.1.100 and a bunch of docker containers all the same IP but different port numbers at the end. So an example URL would be https://192.168.1.100:8181. I set them to URI match to “host”. On my desktop it matches everything perfectly. Only the login for that docker container shows. However, on iOS the wrong one is suggested. And the issue is that even when hitting the key icon to see the list of every login, I can’t tell what’s the right one because the majority of them have the username “admin”.
@linedpaper commented on GitHub (Apr 23, 2023):
Having this issue too. For me they are different entries and the match detection is set to host. It appears to not respect this and shows me every entry for the domain.
@gmcinalli commented on GitHub (Apr 23, 2023):
@linedpaper Try the “starts with” matching.
@linedpaper commented on GitHub (Apr 25, 2023):
@gmcinalli Thanks, that's a great workaround, but this bug has been here for so long, why can't the actual issue get fixed?
@Gerardv514 commented on GitHub (Aug 28, 2023):
Signed up to say I’m having the same issue. The auto fill above keyboard isn’t correct, iOS chrome shows just one incorrect match. iOS safari shows same incorrect as well but you can click open the menu and it shows all subdomains. If I click the password key on chrome, which opens a pop up of bitwarden, there it will return one exact correct match.
@katosabi commented on GitHub (Oct 4, 2023):
I too have this issue; guyyst's suggestion to put the FQDN URI first makes the first match work correctly.
@Gerardv514 commented on GitHub (Nov 21, 2023):
@dwbit can this be pushed to the team to review? This has been a problem for a while now, and I am not able to resolve by setting the FQDN uri as the first one in order.
@Gerardv514 commented on GitHub (Nov 22, 2023):
@Krychaz can you reproduce this issue? Been opened for almost 2 years and it’s very annoying
@Gerardv514 commented on GitHub (Nov 27, 2023):
Hi @djsmith85 can you reproduce this issue? Been opened for almost 2 years and it’s very annoying
@SergeantConfused commented on GitHub (Nov 28, 2023):
Hello everyone,
Thank you all for your contributions and input. The Auto-Fill suggestion on iOS uses (Base domain) as its URI match detection regardless of what the URI match detection is set to within the vault item, and that is the expected behaviour on iOS and we also mention that here; I have communicated internally about this matter and this appears to be the way iOS operates and it cannot be adjusted.
I hope this clarifies everything, and I thank you in advance for your understanding. I will now proceed and close this GitHub thread.
All the best,
@Gerardv514 commented on GitHub (Dec 7, 2023):
@SergeantConfused this makes no sense since apples’ built in keychain has the ability to utilize subdomains.
I switched my autofill iOS option from bitwarden to keychain in iOS settings. The iOS keyboard can properly detect and match each separate sub domain.
I’m also pretty sure at one point i never had an issue with this when I first started using bitwarden.
Where does the limitation then fall?