真正注销BaseGameActivity

时间:2014-03-18 23:13:04

标签: java android google-play-services

我有一个BaseGameActivity,用户应该可以真正注销。调用signOut();是不够的,因为下次用户启动活动时他会再次自动登录。但是我希望活动忘记所有帐户信息,以便当用户再次启动活动时,活动会询问他的帐户信息并且需要用户的许可,就像第一次一样。这样的注销怎么可能?

1 个答案:

答案 0 :(得分:2)

我希望用户每次登录时如果他们已使用之前的应用程序使用登录,或者如果用户明确退出登录则不会自动登录。

GameHelper.java onStart()方法中,检查是否要自动登录。看起来像这样

if (mConnectOnStart)
{
    //Call connect and such
}

您还应该有一个登录和注销按钮。每当用户点击登录或注销按钮时,在共享首选项中设置是否自动连接的标志。每当用户点击登录按钮时,将此布尔值设置为true。当他们点击退出按钮时,将其设置为false。您可以使用您保存的SharedPreference值在应用初始化时调用setConnectOnStart(boolean connectOnStart)

现在,即使用户上次退出登录,也不会再次登录,直到他们点击登录按钮(并设置boolean偏好设置)后才会再次尝试登录。您也可以将DEFAULT_MAX_SIGN_IN_ATTEMPTS设置为您想要的任何内容,这样安装后用户就不会被提示太多次。

请参阅这些docs的最后一部分。