Hi!
I'm an Android engineer working on a team with a Jetpack Compose app in production. Compose provides some rudimentary Autofill support, but we're seeing some issues in conjunction with 1Password for Android that aren't occurring when using other Autofill services (we've tested with Google, Password Store, and Firefox). Notably:
AutofillType.Username
and AutofillType.EmailAddress
), but it will not fill the associated password field. We've verified the autofill ViewStructure
is populated with both fields, with the correct autofill hints and valid virtual view bounding boxes.Autofill.requestAutofillForNode()
on the password field, 1Password does not display, either using GBoard's inline suggestions or its own popup.EVENT_INPUT_UNAVAILABLE
event from AutofillManager
, and the Compose Autofill API is reporting that autofill is not available.These issues have been observed on the following devices:
We've tested the production version (7.9.1) and the beta version (7.9.2.BETA-1).
Our app is on the Play Store here if you would like to take a look. I can also provide a debug build if that would help.
I can take some time to create a minimal project to reproduce the issue, but I'd like to know if that would be useful first. Also, is there any additional debug data I can provide?
Thanks!
1Password Version: 7.9.1, 7.9.2.BETA-1
Extension Version: Not Provided
OS Version: Android 10, Android 12
Comments
Team Member
Hi @tadfisher. Thanks for testing your app with 1Password and sharing your findings with us.
1Password has an additional requirement for filling password fields where the input type of the field must also be of a password type. This appears to be the issue since 1Password does not receive the input type value for both the username and password fields in your app.
I’ve confirmed the same behaviour on my end where I’ve set the
keyboardOptions
andvisualTransformation
for the password field. Those attributes are immediately reflective visually and with the IME but do not carry over as an input type to the Autofill service.Although Autofill support is currently limited and is in the experimental phase with Jetpack Compose, we’re very excited to see that it is in active development and hope to see full support in the near future.
I hope that helps. Let us know if you have any questions!
Thank you! I've patched compose-ui to populate
inputType
in the Autofill view structure and it works correctly with 1Password. The patch is under review here if you'd like to review.Team Member
Hello @tadfisher thanks for sharing that with us! I'm glad to hear you were able to get things working with 1Password.
Team Member
@tadfisher that's fantastic! Thank you. We'll follow the code review and provide any support where we can help!