How to make User logout from twitter fabric ios

2019-01-26 09:04发布

I have made a basic app using Twitter's fabric that allows user to tweet within my app and Provide Login With Twitter.Every things works a I Wanted.

How my app Works

If the user doesn't logged in to twitter my app allows him to login and if he is login then directly allows him to tweet.

Now the Big Part Comes

As I saw in many Apps I Can Remove my signed account from the app.And I am not able to get any method that help me to achieve this. I want to allow user to logout from twitter within my app whenever he/She wants.

I googled but i doesn't find anything

Here Is my Code:

- (IBAction)LogOut:(id)sender
{
    [[Twitter sharedInstance]logOut];
}

- (IBAction)LogMeIn:(id)sender
{
[[Twitter sharedInstance] logInWithCompletion:^
 (TWTRSession *session, NSError *error) {
     if (session) {
         NSLog(@"signed in as %@", [session userName]);
         [LoginButton setTitle:@"LogOut" forState:normal];

     } else {
         NSLog(@"error: %@", [error localizedDescription]);
     }
 }];
}

9条回答
Juvenile、少年°
2楼-- · 2019-01-26 09:56

For Swift try this,

/**
 *  Deletes the local Twitter user session from this app. This will not remove the system Twitter account nor make a network request to invalidate the session.
 *
 *  @param userID ID of the user to log out
 */
Twitter.sharedInstance().sessionStore.logOutUserID(userId)
查看更多
\"骚年 ilove
3楼-- · 2019-01-26 10:05

this was a problem with NSCookie from Foundation framework And i slove this issues with help of below code

NSURL *url = [NSURL URLWithString:@"https://api.twitter.com"];
NSArray *cookies = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookiesForURL:url];
for (NSHTTPCookie *cookie in cookies)
{
    [[NSHTTPCookieStorage sharedHTTPCookieStorage] deleteCookie:cookie];
}
查看更多
一纸荒年 Trace。
4楼-- · 2019-01-26 10:06

Use below:

[TWTRSessionStore logout]

Deprecated:

[Twitter logOut] 

is deprecated.

Users are encouraged to call - [TWTRSessionStore logout] instead of calling this method on the Twitter instance directly.

查看更多
登录 后发表回答