我已经在我的应用程序中实现了 Smart Lock for Passwords。我应该测试哪些常见场景和 UX 流程?
2 回答
这是在应用程序中测试 Smart Lock for Passwords 功能的指南。如果您有网站,请将您的应用程序和网站关联起来以测试这些案例。另请查看开发人员集成指南。
在passwords.google.com上查看当前 Google 帐户保存的内容。条目显示在网站域或 Android 包/应用程序名称下,删除任何条目以重新开始。
当应用程序启动并且存在单个保存的条目时自动登录。这是推荐的 UX 模式,可在设备之间无缝转换,帮助用户完成交易并从上次中断的地方继续体验。在 API 调用完成之前,应禁用或隐藏登录 UI,如果您已经有登录用户,则不要调用 API。
在应用程序中使用密码注册,检查提示对话框以帮助填写注册表单字段,例如姓名和电子邮件,并检查保存提示,选择“保存密码”。
重新安装应用(或清除应用数据)后自动登录。如果已保存某些内容或禁用自动登录,则显示多个凭据的提示。
在passwords.google.com删除任何已保存的密码后定期登录,在出现提示时保存现有的帐户凭据。
注销和应用程序应该调用
disableAutoSignIn
. 当用户返回登录活动/用户界面时,调用 API 并帮助重新登录或在帐户之间轻松切换(应用程序应解决显示选择器对话框的意图),而无需自动重新登录用户。应用程序中的密码更新应该保存更改(应用程序应该只调用 save API),但密码更新不需要 UI)。检查passwords.google.com以获取更新的密码。
在网络上注册不同的第二个帐户后的多个帐户,重新安装应用程序并查看是否通过选择器对话框提供了两个已保存的条目以供登录。
存储的密码错误:您可以通过在登录域的控制台中运行以下命令在 Chrome 中保存错误的密码:
navigator.credentials.store(new PasswordCredential({id: 'user@example.com', password: 'wrongpassword'}))
. 然后在应用程序中测试检索它,这可能会提示用户更正密码并保存新密码,或者删除无效的凭据,这样用户就不会陷入这种状态。在 Chrome 中访问https网站时网络自动填充,检查保存在 Android 上的密码是否可用于填写网站密码字段(它们也应该显示在 chrome://settings/passwords 中)。
删除已保存的密码条目后进行 IDP 登录,使用 Facebook 等登录/注册应用程序,并可能提示“保存帐户”。重新安装以查看自动登录 UX(即,应用程序可能会自动为用户“单击”适当的按钮或为返回的用户自定义登录屏幕)。Google 登录也是如此,但不显示保存提示,将自动保存到相应的 Google 帐户,请参阅的使用示例
silentSignIn
。
请记住,如果您点击保存对话框上的“从不”按钮,它将将该应用程序添加到“设置”>“谷歌”>“智能锁”中设备上所有帐户的“从不保存”列表中,并且不会显示保存提示再次(API 错误消息“当前应用已被列入黑名单”)。您需要从设备上所有帐户的“从不保存”列表中删除该应用程序,才能再次看到保存提示。
另请注意,Android 凭据与保存它们的应用程序的签名和包相关,以防您在开发期间使用多个调试或发布密钥库对应用程序进行签名。
Google 发布了一个 REST API,允许我们在您将其发布到 Play 商店后测试您的网站和应用之间的关联,此处为https://developers.google.com/digital-asset-links/reference/rest/v1/assetlinks /查看
API 输出所有已执行检查的调试日志,以及链接是否有效。它非常有帮助,但传入的链接很少!
我使用此 API 将我的应用程序作为“源”检查,将我的网站作为“目标”检查,并在关系字段中delegate_permission/common.get_login_creds
使用它以及我的应用程序的包 ID、发布密钥哈希,当然还有我的网站 URL 作为目标网站。