Android Smart Lock for Passwords退出

时间:2016-04-27 13:30:09

标签: android google-api google-smartlockpasswords

Google在文档中指出“当用户退出时,请调用CredentialsApi.disableAutoSignIn()以防止用户立即重新登录(...)”。

这就是:

  1. 用户只有1个凭证存储。当他进入应用程序时,他会自动登录;
  2. 用户注销,并调用CredentialsApi.disableAutoSignIn();
  3. 现在,每次用户进入应用程序时,不会自动登录,而是会向他显示选择器,尽管选择器只有1个选项,用于存储唯一的凭据。
  4. 这非常非常烦人。如果用户退出,则每次重新登录时都不应该打扰他。即使他拥有超过1个凭证。但是,暂时,让我们关注他只有1个凭证的情况。

    这是预期的行为吗?我很确定当我在一月份测试这个功能时,它不是这样的。现在我将这个功能投入生产,如果这是预期的行为,也许我必须这样做 在共享首选项中存储一个标志,用于检测用户何时注销。

    请求凭据功能位于应用程序的主要活动中,每次我去那里时,对话框选择器似乎都会请求登录。

1 个答案:

答案 0 :(得分:0)

不幸的是,您必须在应用中维护用户状态(我们最近没有对此行为进行任何更改,它总是如此)。

如果您的应用程序的登录是可选的,以下是我们看到的一些应用实施的内容:

  • 跟踪这是否是设备上的第一次运行(例如,在共享偏好设置中),如果是,则自动触发登录并显示选择器,允许用户在自动触发时轻轻一次登录登录已停用或他们有多个帐户

  • 在后续应用程序启动时,您仍然可以尝试自动登录(例如,在用户在网络或其他设备上注册然后打开应用程序之后),但如果不是第一次运行则不解析结果(即不显示选择器,只丢弃意图解析或稍后保留)

  • 如果用户明确触发登录操作(即点击登录按钮),您可以使用意图,或再次调用API以帮助他们重新登录其帐户,或在帐户

对不起,这需要你身边的一点状态; CredentialsApi.disableAutoSignIn()设置登录禁用状态,但不跟踪用户对应用程序的登录状态(这取决于应用程序开发人员的逻辑并且必须由应用程序管理)。

希望有帮助/有意义,随时留下评论。将看看我们是否可以为此文档添加一些指导!