来自浏览器的Twitter退出未反映在应用

时间:2015-05-12 10:00:56

标签: ios twitter sttwitter

我使用STTwitterAPI使用ACAccountStore或浏览器登录。

这是一个为我创造问题的条件。当用户使用Twitter从浏览器(默认的safari)登录应用程序时,他会调用支持app,STTwitterAPI对象存储数据。

一切正常。我甚至可以使用该帐户发推文。但是如果用户切换到浏览器(默认safari)并从Twitter帐户注销(他在登录时使用)并返回到应用程序推文,则使用旧帐户成功完成(在浏览前先在浏览器中关联),这不应该是这样的。

我想再次询问用户从浏览器注销时登录。我甚至尝试使用verifyCredentialsWithSuccessBlock:errorBlock:但它返回了旧用户(登出的用户)的用户详细信息。

更新

用户登录后,应用程序不会将用户重定向到浏览器。我担心的是,如果用户在意志中打开Twitter,他会显示登录到登录时使用的帐户(应该是情况),但现在用户决定从该帐户注销或希望更改帐户并从浏览器注销帐户(在登录期间使用)。

它会退出(这很好),但当他返回应用程序,并尝试发推或做任何Twitter帐户时,应该要求他再次登录。为此我使用了验证凭据。但是之前登录的访问令牌仍然有效。

那么,如何通知应用已注销浏览器或已切换帐户的应用。有没有办法实现。我至少坚持了一周。尝试了每一种选择。它们似乎都不适用于我的情况。任何帮助,将不胜感激。谢谢!!!

1 个答案:

答案 0 :(得分:0)

我还没有多少使用过STTwitter框架。但我可以自信地说,FabricK的TwitterKit更容易使用。我已经在我的应用程序中将它用于SignUp和SignOut for Twitter的场景,并且它与它提供的方法完美配合。你可以在这里查看:

https://dev.twitter.com/twitter-kit/ios/twitter-login

登录的语法如下:

[[Twitter sharedInstance] logInWithCompletion:^
            (TWTRSession *session, NSError *error) {
  if (session) {
      NSLog(@"signed in as %@", [session userName]);
  } else {
      NSLog(@"error: %@", [error localizedDescription]);
  }
}];

对于注销,您分别使用– logOut方法。