2013-03-28 46 views
5

我有facebook登錄在我的iPhone應用程序使用Facebook SDK - 3.1。登錄後,它會進入我的應用程序,並且我沒有給任何註銷按鈕.so,當我們點擊按鈕登錄與Facebook我將獲得以前的用戶Facebook帳戶。我們可以註銷Facebook的程序

爲了解決這個問題iam給按鈕註銷。

我怎麼能註銷Facebook的編程方式上點擊按鈕

我給登錄這樣

-(IBAction)Login:(id)sender 
{ 

    appDelegate = (AppDelegate *) [[UIApplication sharedApplication] delegate]; 
    [email protected]"LoginwithFB"; 
     [appDelegate openSessionWithAllowLoginUI:YES]; 
} 


-(BOOL)openSessionWithAllowLoginUI:(BOOL)allowLoginUI{ 


    NSArray *permissions=[[NSArray alloc]initWithObjects:@"email", nil]; 
    return[FBSession openActiveSessionWithReadPermissions:permissions allowLoginUI:allowLoginUI completionHandler:^(FBSession *session, FBSessionState state, NSError *error) { 
     [self sessionStateChanged:session state:state error:error]; 
    }]; 
} 
+0

你存儲的用戶名和令牌? – 2013-03-28 11:14:04

+0

@ForamMukundShah是的 – user2197875 2013-03-28 11:19:26

+0

因此,在您的註銷按鈕的點擊事件設置爲零 – 2013-03-28 11:49:51

回答

20

使用此代碼:

if (FBSession.activeSession.isOpen) 
    { 
     [FBSession.activeSession closeAndClearTokenInformation]; 
    } 
+0

不適用於我 – user2197875 2013-03-28 11:28:43

+0

您是否在nsuserdefults或任何 – 2013-03-28 11:41:36

+0

偉大的工具中存儲用戶名和標記。謝謝。 – thedp 2014-03-15 12:55:48

5

斯威夫特版本

import FBSDKLoginKit

FBSDKLoginManager().logOut() 

使用FBSDK 4.4

#import <FBSDKLoginKit/FBSDKLoginManager.h> 

然後使用此代碼到註銷。

FBSDKLoginManager *manager = [[FBSDKLoginManager alloc] init]; 
[manager logOut]; 

希望這將有助於:)

+0

我看到函數是如何工作的,但我想我們需要創建實例有點奇怪。他們爲什麼沒有把它作爲一種靜態方法來實現。 'setCurrentAccessToken'和'setCurrentProfile'也是靜態的=) – 2016-02-18 17:19:33

相關問題