android / android/identity-samples

Credential Provider doesn't work correctly in the Emulator

Open
#123 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Kotlin
Stars
515
Forks
283
Avg merge
9h 37m
Merged PRs (30d)
2

Description

I've built the Credential Provider sample, however I can't get the passkey functionality to work in the emulator using the standard Google Play image (Android 14 or 15). I've installed a screen lock (PIN), enabled it as the preferred provider (also made sure google PM is disabled) and disabled chrome using its own password manager. If I try to create (or get) a webauthn Credential using a test site like webauth.me(ensuring requireResidentKey is set), my service entry points (beginCreate... and beginGet...) are never called. Note I haven't logged into any accounts (google or otherwise) at this point

However doing similar steps on a physical device works as expected? Is there anything I'm missing or that is needed to enable a third party credential manager? Is there any limits in the emulator that would block its use? Specifically, I'm thinking about automated tests, etc

Update to the above - it looks like I need to be signed in with a google account before I can use passkeys with or without a third party credential provider - without being signed in, it looks like it has saved the passkey internally, but there are no options available to authenticate

Contributor guide

Open the contributing guide

Research direction

Start with the Credential Provider sample and its beginCreate and beginGet entry points. Reproduce the passkey flow on Android 14 and 15 Google Play emulator images using webauth.me, then compare it with a physical device and with a signed-in Google account. Done means determining whether the emulator or account state prevents the callbacks and documenting the required setup or a clear fix.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
authentication, mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.