Android:Facebook的SDK注销问题?

您好,我正在使用我的android手机上的Android的Facebook的SDK和使用单一login。 它正常工作,当我login到Facebook的应用程序,我的应用程序也login。注销我遇到了困惑。

我实现的方式是从应用程序的用户首选项中恢复访问令牌和过期date,并检查会话的有效性。 如果过期,应用程序调用facebook.authorizedfunction,一旦授权访问令牌和过期date将再次更新。

处理注销时,我发现有些事情有点混乱。

1)当我从Facebook应用程序注销时,我的应用程序仍然可以通过并请求用户的详细信息。 虽然我的应用程序保存的访问令牌与facebook应用程序没有任何关系,但我认为在请求数据时至less会给我一个错误。 但它没有给我错误。

它是否假设这样做? 从Facebook应用程序注销不会影响我存储在我的应用程序中的访问令牌。

2)当我从我的应用程序注销而不是Facebook应用程序,facebook应用程序不会自动注销。

Facebook访问令牌和您的应用程序访问令牌是分开的,独特的,因此完全有可能是有效的,允许访问而另一个无效,并且需要重新授权。

如果Facebook应用程序已login,但您的应用程序没有login,那么Facebook SDK将使用现有的Facebook应用程序login信息为您的应用程序获取新的访问令牌,而无需进行身份validation,但是这仍然没有链接到任何Facebook应用程序login令牌办法。

如果Facebook应用程序未安装或未login,那么Facebook SDK将带您到Facebook网站进行初始身份validation,但是这不会loggingFacebook应用程序,因为您的访问令牌和Facebook访问令牌。

所以,总之 – 你的理解是正确的。 除了您的应用程序尝试对用户进行身份validation之外,两个应用程序之间没有任何交互,那么Facebook应用程序将充当代理,只要Facebooklogin,您就可以在无需身份validation的情况下获得访问权限。之后,互动和你所观察到的是预期的和预期的行为。

我也有同样的问题。 我正在考虑创build一个“isLogged”variables并将其存储,以便当某人注销并重新启动应用程序时,它甚至不会validation用户是否绕过了Facebook的会话validation。