emailAddress autofill提示未填写

时间:2018-12-08 23:11:33

标签: android

我以为我已经在我的应用程序中正确设置了autofillHints,但是最近我注意到了一些奇怪的事情。登录屏幕有两个字段:电子邮件地址和密码。如果我在密码字段中点击,将出现自动填充提示(我正在使用LastPass)。如果我选择一个帐户,它将填写密码,但不会填写电子邮件地址。密码字段更改为彩色,以表示它已使用自动填充功能,但未更改电子邮件地址字段。

我本可以发誓过去它可以正常工作,但是也许我误会了。我尝试设置android:importantForAutofill="yes",但这没什么区别。我尝试在代码中设置emailEditText.setAutofillHints(View.AUTOFILL_HINT_EMAIL_ADDRESS)而不是在XML中设置android:autofillHints="emailAddress",但这并没有改变。

我应该能够在“电子邮件”或“密码”字段中点击并出现自动填充提示。两个字段都应更改颜色。两个字段都应填写。

有趣的是,如果我将电子邮件字段的android:autofillHints属性更改为password,它的确会填写。使用密码,当然不是电子邮件。但是至少自动填充服务正在做某事。

1 个答案:

答案 0 :(得分:1)

我完全迷失了,直到偶然发现:

  

您可能会遇到的一个问题是,并非所有自动填充服务都   能够填充相同类型的内容。 Google自动填充时   服务可以填写凭据,地址,电话号码,信用卡   信息等等,Dashlane仅支持凭据(当时   撰写本文)。   来自https://medium.com/@bherbst/getting-androids-autofill-to-work-for-you-21435debea1

这让我开始思考。也许未将LastPass设置为填写所有字段。也许它将电子邮件地址视为通用表单字段(例如电话号码),而不是登录名的一部分。也许它期待其他东西。

我再次查看了提示类型。这次,我尝试了android:autofillHints="username",它运行良好。对于登录字段,username是正确的提示类型,而不是emailAddress,即使它是电子邮件地址。

希望这可以使其他人摆脱我忍受的麻烦!