PhilippC / PhilippC/keepass2android
[BUG] Autofill not working for WhatsApp 2FA PIN
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 6.2k
- Forks
- 478
- Avg merge
- 1h 4m
- Merged PRs (30d)
- 2
Description
Checks
- I have read the FAQ section, searched the open issues, and still think this is a new bug.
Describe the bug you encountered:
3/27/2026 8:04:02 PM:898 -- DatabaseSettingsActivity.OnPause 204 (Thread ID: 1) (Main Looper)
3/27/2026 8:04:02 PM:899 -- Timeout start (Thread ID: 1) (Main Looper)
3/27/2026 8:04:02 PM:928 -- DatabaseSettingsActivity.OnStop 204 (Thread ID: 1) (Main Looper)
3/27/2026 8:04:03 PM:599 -- Going to background (Thread ID: 1) (Main Looper)
3/27/2026 8:04:04 PM:255 -- SelectCurrentDbActivity.OnDestroy True 201 (Thread ID: 1) (Main Looper)
3/27/2026 8:04:04 PM:275 -- GroupActivity.OnDestroy True 203 (Thread ID: 1) (Main Looper)
3/27/2026 8:04:04 PM:563 -- DatabaseSettingsActivity.OnDestroy True 204 (Thread ID: 1) (Main Looper)
3/27/2026 8:04:04 PM:768 -- OngoingNotificationsService.OnTaskRemoved: android.intent.action.MAIN (Thread ID: 1) (Main Looper)
3/27/2026 8:04:04 PM:768 -- QuickLocking database (Thread ID: 1) (Main Looper)
3/27/2026 8:04:04 PM:789 -- Starting/Updating OngoingNotificationsService. Database QuickLocked (Thread ID: 1) (Main Looper)
3/27/2026 8:04:07 PM:335 -- parsing autofillStructure... (Thread ID: 1) (Main Looper)
3/27/2026 8:04:07 PM:337 -- This is the autofillStructure:
{
"InputFields": [
{
"IdEntry": null,
"Hint": null,
"ClassName": "android.widget.FrameLayout",
"AutofillHints": null,
"IsFocused": false,
"InputType": 0,
"HtmlInfoTag": null,
"HtmlInfoTypeAttribute": null
},
{
"IdEntry": "action_bar_root",
"Hint": null,
"ClassName": "android.widget.FrameLayout",
"AutofillHints": null,
"IsFocused": false,
"InputType": 0,
"HtmlInfoTag": null,
"HtmlInfoTypeAttribute": null
},
{
"IdEntry": "action_mode_bar_stub",
"Hint": null,
"ClassName": "android.view.View",
"AutofillHints": null,
"IsFocused": false,
"InputType": 0,
"HtmlInfoTag": null,
"HtmlInfoTypeAttribute": null
},
{
"IdEntry": null,
"Hint": null,
"ClassName": "android.widget.FrameLayout",
"AutofillHints": null,
"IsFocused": false,
"InputType": 0,
"HtmlInfoTag": null,
"HtmlInfoTypeAttribute": null
},
{
"IdEntry": null,
"Hint": null,
"ClassName": "android.widget.TextView",
"AutofillHints": null,
"IsFocused": false,
"InputType": 0,
"HtmlInfoTag": null,
"HtmlInfoTypeAttribute": null
},
{
"IdEntry": "code",
"Hint": null,
"ClassName": "android.widget.EditText",
"AutofillHints": null,
"IsFocused": true,
"InputType": 2,
"HtmlInfoTag": null,
"HtmlInfoTypeAttribute": null
},
{
"IdEntry": "progress_bar_code_input_blocked",
"Hint": null,
"ClassName": "android.widget.ProgressBar",
"AutofillHints": null,
"IsFocused": false,
"InputType": 0,
"HtmlInfoTag": null,
"HtmlInfoTypeAttribute": null
},
{
"IdEntry": "error",
"Hint": null,
"ClassName": "android.widget.TextView",
"AutofillHints": null,
"IsFocused": false,
"InputType": 0,
"HtmlInfoTag": null,
"HtmlInfoTypeAttribute": null
},
{
"IdEntry": "nag_text",
"Hint": null,
"ClassName": "android.widget.TextView",
"AutofillHints": null,
"IsFocused": false,
"InputType": 0,
"HtmlInfoTag": null,
"HtmlInfoTypeAttribute": null
}
],
"PackageId": "com.whatsapp",
"WebDomain": null
} (Thread ID: 1) (Main Looper)
3/27/2026 8:04:07 PM:346 -- Parsing done (Thread ID: 1) (Main Looper)
3/27/2026 8:04:07 PM:347 -- cannot autofill (Thread ID: 1) (Main Looper)
3/27/2026 8:04:27 PM:552 -- parsing autofillStructure... (Thread ID: 1) (Main Looper)
3/27/2026 8:04:27 PM:554 -- This is the autofillStructure:
{
"InputFields": [
{
"IdEntry": null,
"Hint": null,
"ClassName": "android.widget.FrameLayout",
"AutofillHints": null,
"IsFocused": false,
"InputType": 0,
"HtmlInfoTag": null,
"HtmlInfoTypeAttribute": null
},
{
"IdEntry": "action_bar_root",
"Hint": null,
"Clas
Describe what you expected to happen:
No response
What version of Keepass2Android are you using?
1.15-r1
Which version of Android are you on?
8.1
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the issue with Keepass2Android 1.15-r1 on Android 8.1 and WhatsApp's 2FA PIN screen. Trace the autofillStructure parsing around the focused EditText with IdEntry "code" and the "cannot autofill" log, including DatabaseSettingsActivity lifecycle messages. Done means the WhatsApp PIN field is recognized and autofilled without breaking existing autofill behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, csharp
- Domain
- mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 42/100