Autofill Sample Autofill Settings Sample Login Using a Custom Virtual View Sample Credit Card Check Out Using Spinners Sample Login Using EditTexts Sample Login Using AutoCompleteTextViews Sample Email Compose Using EditTexts Sample Credit Card Check Out Using Compound Views Username Password Success! Sign in using standard views Sign in using standard views that trigger AutoComplete dialogs when focused Tap to sign in. CC Number CC Exp CC Security Code Cancel Save Authenticate responses Authenticate datasets Clear all data (including credentials) Are you sure you want to delete all autofill data from the sample service? Confirmation OK / Cancel Authentication Data Update credentials Enter current password Enter new password Change credentials Clear Login To Body Autofill Main Login Submit Credit Card Expiration Month Credit Card Expiration Year Invalid package signature This is a sample login page that uses standard EditTexts from the UI toolkit. EditTexts are already optimized for autofill so extra autofill-specific code is almost never needed. This is a sample login page that uses AutoCompleteTextViews instead of EditTexts. The AutoComplete dialogs can potentially interfere with the Autofill dialogs, so it is necessary to implement the AutofillCallback to disable AutoComplete when Autofill is working. This is a sample login page that uses a custom View with virtual children. Since the Autofill framework does not know how to autofill the virtual children out of the box, it is necessary implement certain Autofill-specific methods and interface directly with AutofillManager. This is a sample credit card checkout page that uses EditTexts and Spinners to input data into the form. While EditTexts are optimized out of the box, Spinners can require a small amount of work when using a custom array adapter. In that case, you need to tell the Autofill framework which values in the adapter map to which indices. This is a sample email compose page that uses EditTexts to compose the email. Since none of the fields on the page are important to autofill, it is necessary to set the android:importantForAutofill XML property appropriately for each View. You can either set it to "no" on all non-autofillable Views, or set "noExcludeDescendants" on the root View if all Views in the hierarchy should not be autofilled. In this case, we did the latter. This is a sample credit card checkout page that uses a custom compound View to input the credit card\'s expiration date and an EditText to input the credit card number. While the EditText is optimized out of the box for autofill, this example shows how to implement certain Autofill- specific methods and XML properties for the custom compound view. Automatically return to main page in %d second. Automatically return to main page in %d seconds. Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 30 31 user-1 user-2