5

在 Google Play Services v8.3 中,Google 添加了一种为用户提供登录帐户“提示”的方法 - 一个用户界面,用于选择以前使用的电子邮件来注册应用程序。

在此处输入图像描述

请参阅此处了解更多信息。

我想知道 Google 会将屏幕中显示的电子邮件放在哪里,在我的设备上对其进行测试,我看到了一些我可能以前登录过的非常旧/未使用的电子邮件。

有没有办法自定义它,以便只有在设备上设置的电子邮件才会显示在提示屏幕中?

4

2 回答 2

13

好问题,我是 Google Smart Lock 的产品经理,答案如下:

“提示”对话框中显示的电子邮件地址来自哪里?

  • 列表顶部显示的项目对应于设备上 Google 帐户的电子邮件地址,以及来自 Android 帐户管理器的任何其他电子邮件地址(例如 IMAP 电子邮件地址、Facebook 应用程序注册的电子邮件地址等)。 )

  • 接下来显示使用设备上的任何 Google 帐户保存的其他电子邮件地址,按出现频率最高的顺序排列。这些要么保存到其他地方的 Smart Lock(例如在其他应用程序中),要么通过 Chrome 密码管理器保存到网站。这些条目应与设备上 Google 帐户的密码对应。

  • 如前所述,“提示”对话框旨在允许用户一键提供电子邮件地址(以及姓名或照片 URL,如果有)以帮助登录或注册开发者的应用程序,允许预先填写登录或注册表单中的字段,或者通过向应用提供可用于后端身份验证的ID 令牌完全跳过登录 UI。

  • 请注意,此对话框由 Play Services 显示,其内容不能被调用应用程序读取,并且对用户是私有的;只有来自用户选择的条目的信息才会提供给开发者的应用程序。这也意味着无法自定义对话框文本,只能在登录和注册之间切换,详情请参阅此问题

  • 我们曾考虑为用户添加 UI 以自定义列表中显示的内容,但在我们的 UX 测试中,很少使用这样的功能,并且增加了视觉复杂性和出错的机会。在实践中,大多数用户只有几个条目,并且由于最常见的地址位于顶部,用户只需选择他们想要的一个而忽略其余的。其他条目并没有真正造成伤害,所以我们现在选择不让用户自定义它。

也就是说,开发人员可以自定义对话框中显示的内容吗?

  • 是的,开发人员可以修改HintRequestto.setPhoneNumberIdentifierSupported(true).setEmailAddressIdentifierSupported(false),这将导致显示电话号码,来自上述类似来源(来自设备或与 Google 帐户相关联)。

  • 同样,HintRequest可以将构建器配置为显示“注册方式”或“登录方式”提示,而不是默认的“继续方式”。

关于仅在设备上显示电子邮件地址:如果应用程序的身份验证系统基于电子邮件地址,我建议保留电子邮件地址的完整列表(不仅仅是设备上的那些),因为通常用户的预期电子邮件地址是不是 Google 帐户(例如工作、学校、Yahoo/Hotmail 或区域电子邮件提供商)。如上所述,在实践中,其他电子邮件地址的存在通常有助于并且不会减损任务完成(用户要么看到他们正在寻找的电子邮件地址,忽略其余的,要么点击“以上都不是”以手动输入内容),并且使用较少的电子邮件地址会随着时间的推移而逐渐减少。(拥有大量测试电子邮件地址的开发人员的体验与最终用户略有不同,后者通常拥有简短的电子邮件地址列表)

希望有帮助!如有任何问题或反馈,请发表评论。

于 2015-12-30T21:13:35.750 回答
0

如果我错了,请纠正我,但没有“提示”屏幕。您共享的链接讨论了从帐户屏幕中选择的帐户之一获取凭据以在应用程序中预填写注册表单。

我认为您所指的屏幕是 Smart Lock 帐户对话框(至少我是这么称呼它的)。此屏幕可让您选择要在当前使用的 Google 帐户中使用 Smart Lock 保存的帐户。

您共享的屏幕截图似乎是另一个对话框,询问您要使用哪个 Google 帐户(然后可以在其中保存多个 Smart Lock 帐户,即凭据)。您可以通过标题来区分两个屏幕。Smart Lock 帐户对话框显示“选择一个 - 应用名称 - 使用 Google Smart Lock 保存的帐户”

如果您显示的这个屏幕可以自定义,那么它不会通过 Smart Lock,而可能是通过 Google 登录 API。抱歉,我无法提供更多帮助。

于 2015-12-23T20:20:12.160 回答