【问题标题】:how to logIut a Twitter account from my Native ios apps如何从我的本机 ios 应用程序中注销 Twitter 帐户
【发布时间】:2015-06-18 21:31:55
【问题描述】:

我正在使用 Fabric SDK 登录 Twitter 帐户,当我登录时,在我的 viewDidLoad 方法中执行以下代码

- (void)viewDidLoad
{
       [super viewDidLoad];

    TWTRLogInButton *loginButton = [TWTRLogInButton buttonWithLogInCompletion:^(TWTRSession *session,NSError *error){

        if (session) {
//            mysession =session;
            NSLog(@"signed in as %@", [session userName]);
        } else {
            NSLog(@"error: %@", error );
        }

    }];
    loginButton.center = self.view.center;
    [self.view addSubview:loginButton]; 
}


//and i use one UIButton for logOut ,And code for logout is as like

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

但是这段代码对我不起作用, 请给我一个正确的方法

【问题讨论】:

  • 不工作是什么意思。如果它使用您的系统帐户,我认为您需要先注销系统帐户。
  • 是的,我首先想到的是,但是当我再次按下“使用 Twitter 登录”时,它就不再需要登录凭据了。并自动登录,控制台打印“签名为用户名”
  • 这些东西你试过了吗stackoverflow.com/questions/28961014/…
  • 任何人都喜欢这个 logOut isuue 吗?请给我一个正确的方法。提前致谢。

标签: ios objective-c twitter


【解决方案1】:

这是来自 Foundation 框架的 NSCookie 的问题,我在下面的代码的帮助下解决了这个问题

NSURL *url = [NSURL URLWithString:@"https://api.twitter.com"];

NSArray *cookies = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookiesForURL:url];
for (NSHTTPCookie *cookie in cookies)
{
    [[NSHTTPCookieStorage sharedHTTPCookieStorage] deleteCookie:cookie];
}

【讨论】:

    【解决方案2】:

    您需要将 TWTRSession nil 设置为注销。 所以请检查注销方法。

    【讨论】:

    • 按照文档 (dev.twitter.com/twitter-kit/ios-reference/twitter) 的规定,这会删除本地会话,但不会使远程会话无效。效果是,一旦我通过身份验证然后注销,如果我再次单击“登录”按钮,我将再次使用同一用户登录,有效地阻止了我切换用户。
    猜你喜欢
    • 2014-07-27
    • 2015-05-11
    • 1970-01-01
    • 2012-02-29
    • 1970-01-01
    • 1970-01-01
    • 2017-04-05
    • 2015-11-02
    • 2016-11-29
    相关资源
    最近更新 更多