从iOS应用程序注销社交网络

时间:2014-12-30 18:13:03

标签: ios iphone facebook ipad cookies

在我的应用中,我正在使用谷歌,面书登录。我能够正确登录,但当我尝试从谷歌退出时,脸书我使用以下代码。但即使我从我的应用程序退出,我的问题仍然存在。

当我点击登录按钮时,它会询问权限而不是登录屏幕。即使我从我的应用程序注销,我是否需要在safari浏览器(设置中的清除cookie)或设备社交应用程序中注销,或者我是否需要从Appdelegate注销。

如何从自己的应用程序完成注销。

[[GPPSignIn sharedInstance] signOut];

//facebook
FBSession* session = [FBSession activeSession];
[session closeAndClearTokenInformation];
[session close];
[FBSession setActiveSession:nil];
NSHTTPCookieStorage* cookies = [NSHTTPCookieStorage sharedHTTPCookieStorage];
NSArray* facebookCookies = [cookies cookiesForURL:[NSURL URLWithString:@"https://facebook.com/"]];

for (NSHTTPCookie* cookie in facebookCookies) {
    [cookies deleteCookie:cookie];
}

1 个答案:

答案 0 :(得分:0)

对于FB,closeAndClearTokenInformation仅记录用户的应用程序,而不是任何其他应用程序(如Facebook用户或Safari,如果用户已登录)。

当您再次登录时,它将快速应用程序切换(到FB应用程序或Safari),如果用户仍然在那里登录,它将只切换回来并为您的应用程序提供访问令牌(除非您要求其他权限)。这就是SSO的工作方式。