【问题标题】:Testing Smart Lock for Passwords app integration测试 Smart Lock 的密码应用程序集成
【发布时间】:2016-04-18 02:06:42
【问题描述】:

我已经在我的应用中实现了 Smart Lock for Passwords。我应该测试哪些常见场景和 UX 流程?

【问题讨论】:

    标签: google-smartlockpasswords


    【解决方案1】:

    以下是在应用中测试 Smart Lock for Passwords 功能的指南。如果你有一个网站,associate your app and site 来测试这些案例。另请查看developer integration guide

    通过passwords.google.com 查看当前 Google 帐户保存的内容。条目显示在网站域或 Android 包/应用名称下,删除任何条目以重新开始。

    1. 自动登录,当应用启动且存在单个已保存条目时。这是推荐的 UX 模式,可在设备之间无缝转换,帮助用户完成交易并从上次中断的地方继续体验。在 API 调用完成之前,应禁用或隐藏登录 UI,如果您已经有登录用户,请不要调用 API。

    2. 在应用程序中使用密码注册,检查 hints dialog 以帮助填写注册表单字段,例如姓名和电子邮件,并检查保存提示,选择“保存密码”。

    3. 重新安装应用(或清除应用数据)后自动登录。如果已保存某些内容或禁用自动登录,则显示多个凭据提示。

    4. 常规登录在删除 passwords.google.com 上保存的所有密码后,在出现提示时保存现有帐户凭据。

    5. 退出,应用应调用disableAutoSignIn。当用户返回登录活动/用户界面时,调用 API 并帮助轻松重新登录或在帐户之间切换(应用应解析显示选择器对话框的意图),而无需自动重新登录用户。

    6. 密码更新应用中应该保存更改(应用应该只调用 save API),但密码更新不需要 UI)。检查passwords.google.com 以获取更新的密码。

    7. 多个帐户在网络上注册另一个帐户后,重新安装应用程序并查看是否通过选择器对话框提供了两个已保存的条目以供登录。

    8. 存储的密码错误:您可以通过在登录域的控制台中运行以下命令在 Chrome 中保存错误的密码:navigator.credentials.store(new PasswordCredential({id: 'user@example.com', password: 'wrongpassword'}))。然后在应用程序中测试检索此密码,这可能会提示用户更正密码并保存新密码,或者删除无效凭据,以免用户陷入此状态。

    9. Web 自动填充 在 Chrome 中访问 https 网站时,检查保存在 Android 上的密码是否可用于填写网站密码字段(他们应该也应该显示在 chrome://settings/passwords)。

    10. IDP 登录 删除保存的密码条目后,使用 Facebook 等登录/注册应用程序,可能会提示“保存帐户”。重新安装以查看自动登录 UX(即,应用程序可能会自动为用户“单击”相应的按钮或为返回的用户自定义登录屏幕)。 Google 登录也是如此,但 no save prompt is shown 会自动保存到相应的 Google 帐户,请参阅 example usesilentSignIn

    请记住,如果您点击保存对话框上的“从不”按钮,它会将应用添加到 设置 > Google > Smart Lock for Passwords 中的从不保存列表中 用于设备上的所有帐户,并且不会再次显示保存提示(API 错误消息“当前应用已列入黑名单”)。您需要从设备上所有帐户的从不保存列表中删除该应用,才能再次看到保存提示。

    另请注意,Android 凭据与保存它们的应用的签名和包相关,以防您在开发期间使用多个调试或发布密钥库对应用进行签名。

    【讨论】:

    【解决方案2】:

    Google 发布了一个 REST API,允许我们在您将其发布到 Play 商店后测试您的网站和应用之间的关联,此处为 https://developers.google.com/digital-asset-links/reference/rest/v1/assetlinks/check

    API 会输出所有已执行检查的调试日志,以及链接是否有效。它非常有用,但传入的链接很少!

    我使用此 API 将我的应用程序作为“源”检查,将我的网站作为“目标”检查,在关系字段 delegate_permission/common.get_login_creds 以及我的应用程序的包 ID、发布密钥哈希,当然还有我的网站 url 为目标网站。

    【讨论】:

      猜你喜欢
      • 2015-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-24
      • 2018-07-30
      • 2015-02-12
      • 2020-12-13
      • 2018-07-18
      相关资源
      最近更新 更多