Android O自动填充功能,用于名字,姓氏和生日

问题描述 投票:1回答:3

是否可以将新的Android Oreo自动填充功能用于生日?有没有办法区分名字和姓氏?我只在API文档中看到了AUTOFILL_HINT_NAME。

android autofill android-8.0-oreo
3个回答
2
投票

那些属性View.AUTOFILL_HINT_ *不是激进的,而是建议。在android:autofillHints中,你可以设置你喜欢的任何字符串,甚至可以用文字来设置用逗号分隔的字符串:

描述视图的内容,以便自动填充服务可以填写适当的数据。可以在逗号分隔列表或字符串数​​组中组合多个提示以表示例如emailAddress或postalAddress。

自动填充服务接收这些提示,并根据其算法实现返回一个FillResponse数据集,其中包含可能填写的数据。

该服务甚至可以在节点中查找包含“名字”等标签的视图,以确定您的EditText需要名字而不是全名。你可以在你的autofillHint上加上'first-name',但只有当用户拥有一个具有名字数据的自动填充服务并且他的算法足够聪明才能匹配它时,它才会起作用。

简而言之,无法保证自动填充功能适用于特定用户,但有一些程序可以增加机会:

  1. 把你认为可以帮助的autofillHint放在一边,用逗号分隔。 Rembember使用其他系统使用的常量或行业标准,例如HTML标准使用given-name作为名字。如果谷歌自动填充开始支持将成为其匹配算法的候选者的名字和姓氏,那么android:autofillHint="first-name,given-name,display-name"将具有很高的匹配概率。
  2. 如果您使用某些android:importantForAutofill="yes"作为标签并尝试放入相同的视图节点,请使用TextView
  3. 使用qazxsw poi,qazxsw poi以及其他已针对自动填充进行优化的视图。
  4. 使用像“android:label”这样的属性,如果您的提示不够好,它们可能会被自动填充服务的启发式使用。

查看此EditText以获取更多提示。

检查AutocompleteTextView


1
投票

在工作中浪费了一天试图为名字添加autofill optmize Android guide之后,因为显然list of HTML standard autofill tags适用于谷歌自动填充服务:@但没有任何作品的名字。所以我检查了Facebook应用程序和Flixbus并猜测他们两个都可以自动填充名字,所以绝望我,我试过autofillHints,它吓坏了!!!!!即使手机上的谷歌帐户名称是该公司的,并且它之前没有输入任何信用卡。令人遗憾的是,Android团队中的任何人都不愿意提及family-name提示或cc-given-name实际存在的事实,无论您以前是否曾使用您的帐户填写过信用卡信息。

所以对我来说,我只使用EditText而没有任何标签左右,但我必须添加family-namecc-given-name才能显示自动完成,所以没有提示它不起作用。所以就像这样:(为简单起见,删除了ids,layout_width / height和orientation)

android:hint="First name"

0
投票

是否可以将新的Android Oreo自动填充功能用于生日?

不。希望很少有人会在同一个应用中反复进入他们的生日。

有没有办法区分名字和姓氏?

没有。

Android自动填充支持一小部分qazxsw poi。

© www.soinside.com 2019 - 2024. All rights reserved.