0

アプリにメール、Twitter、Facebook を統合するために、Sharekit の代わりに Socialize SDK を使用しています。

FacebookとTwitterでうまく機能しているユーザーのプロファイルに文字列を投稿するだけです。

ワークフローは次のとおりです。

  1. ユーザーが share をクリックし、facebook/twitter を選択します。

  2. ユーザーが初めて共有する場合は、facebook/twitter のログイン画面が表示されます

  3. ユーザーがログインし、認証後、共有が成功します。

  4. ユーザーが 2 回目の共有を行うと、facebook/twitter のログイン画面で認証が行われず、共有が成功します。

  5. ユーザーが facebook/twitter からログアウトしたい場合は、設定パネルに移動し、twitter/facebook ボタンをクリックしてログアウトします。

    [ログアウト後に共有に戻ると、ユーザーが twitter をクリックするとログイン画面がポップアップしますが、ユーザーが facebook をクリックすると、シャドー ボックスが数秒間表示されて消え、ユーザーは以前のアカウントでログインします。]

    この問題を解決するにはどうすればよいですか?

使ってみました

[SocializeThirdPartyFacebook removeLocalCredentials] and also 

[SZFacebookUtils unlink]; 

どうすればいいですか

すべてのキャッシュとCookieもクリアしようとしましたが、それでも同じ結果です

 NSHTTPCookieStorage* cookies =   [NSHTTPCookieStorage sharedHTTPCookieStorage];
        NSArray* facebookCookies = [cookies cookiesForURL:
                                    [NSURL URLWithString:@"http://login.facebook.com"]];

        for (NSHTTPCookie* cookie in facebookCookies) {

            NSLog(@"In For");
            [cookies deleteCookie:cookie];

            NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
            [defaults removeObjectForKey:kSocializeFacebookAuthAppId];
            [defaults removeObjectForKey:kSocializeFacebookAuthLocalAppId];
            [defaults removeObjectForKey:kSocializeFacebookStringForAPI];
            [defaults removeObjectForKey:kSocializeConsumerKey];
            [defaults removeObjectForKey:kSocializeConsumerSecret];
4

2 に答える 2

2

Facebook および twitter SDK は、アクセス トークンを Cookie に保存します。

したがって、コードでロギング メカニズムを使用しようとする場合は、すべてのキャッシュと Cookie をクリアする必要があります。

于 2012-09-05T11:58:12.037 に答える