2012-12-29 53 views
1
I am using facebook sdk 3.1 & FBloginview.So i want to perform logout functionality 
from other view controller.. 
Here is my code, 

-(void)logout 
{ 
    AppDelegate *appdelegate = [[UIApplication sharedApplication] delegate]; 

    if (FBSession.activeSession.isOpen) 
    { 
     [appdelegate closeSession];  
    } 
    [appdelegate openSessionWithAllowLoginUI:NO]; 
} 

崩潰的註銷功能在Facebook在應用程序委託方法sdk3.1

- (void) closeSession 
{ 
    [FBSession.activeSession closeAndClearTokenInformation]; 
} 

所以在closeSession方法我得到EXC_BAD_ACCESS

+0

這個問題非常不明智,看起來你已經付出了很少的努力去做它...... – 2012-12-29 10:24:10

+0

爲什麼我遇到了......? – Kalpesh

回答

3

在註銷按鈕點擊刪除存儲在userdefault所有按鍵爲Facebook

- (void)fbDidLogout 
{ 
    NSHTTPCookie *cookie; 
    NSHTTPCookieStorage *storage = [NSHTTPCookieStorage sharedHTTPCookieStorage]; 

    for (cookie in [storage cookies]) 
    { 
     NSString* domainName = [cookie domain]; 
     NSRange domainRange = [domainName rangeOfString:@"facebook"]; 
     if(domainRange.length > 0) 
     { 
      [storage deleteCookie:cookie]; 
     } 
    } 
} 

OR

Facebook類已經包含在其invalidateSession功能的餅乾取出,

這就是所謂的[facebook logout];

+0

我使用的是Facebook sdk 3.1 ..它不適合我... – Kalpesh

+0

除了FB應用商店登錄信息在NSUserDefaults中,它還將登錄信息存儲在NSHTTPCookieStorage中。所以上面的代碼應該工作。 – Wolverine

+0

謝謝你的回覆。好的,我正在使用FBlogiview。所以,我想從另一個視圖控制器註銷。我怎麼能做到這一點? – Kalpesh

相關問題