OAuth と MGTwitterEngine ライブラリを使用して Twitter アプリケーションを作成しました。ログイン フェーズは正常に機能していますが、ログアウトで問題が発生しています。OAuth のログアウトのすべての投稿を参照しましたが、機能しません。では、Twitterからログアウトするための完璧な方法を誰か提案できますか...? または、ログアウトのためにライブラリファイルに加えなければならない変更..!!
7 に答える
誰かがこれに対する解決策を見つけたことがありますか? もしそうなら、投稿してください!
更新:私はそれを理解しました。MGTwitterEngine.m で、initWithDelegate メソッドで _clearCookies を検索します。これは現在 NO に設定されています。YES に変更します。現在のユーザーをログアウトするためのアクション メソッドで、[_engine clearAccessToken] を呼び出します。これを実行すると、出来上がりです。
Twitter OAuth/xAuth からのサインアウトはありません... クライアント側のソリューションを実装する必要があります。
- ログイン時にアクセス トークンをキーチェーンまたはコアデータに永続的に保存し (ユーザーが自分のアカウントからアプリケーションを取り消さない限り、期限切れになることはありません)、その後の Twitter への呼び出しでそれを使用し、「ユーザーのサインインを維持する」
- サインアウト時に、保存されている関連データ (この場合はアクセス トークン) を削除します。
それが役立つことを願っています
ここに明示的に記載されているのはわかりませんが、SA_OAuthTwitterEngineの「clearAccessToken」関数を使用して現在のユーザーを「ログアウト」しました。
ログアウトの仕方がわかりません。ただし、毎回ログイン画面が必要な場合は、エンジンが Userdefaults に保存するログイン固有のデータを削除してください (これが正しい方法かどうかはわかりません)。
このチュートリアルを使用して、Twitter を iOS アプリのリンクに統合します
ログアウトには、次を使用します。
[_engine clearAccessToken];
_engine - これは SA_OAuthTwitterEngine クラスのインスタンスです。
IBAction メソッドでこのメソッドを呼び出すことができます。
この方法も必要
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults removeObjectForKey:@"authData"];
[defaults synchronize];
ちょっとばかげているかもしれませんが、これはうまくいくようです
- (IBAction)logout:(id)sender {
[_engine dealloc];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults removeObjectForKey:@"authData"];
[defaults synchronize];
[self presentLoginView];
}
iPhoneの設定メニューにあるTwitterアプリケーションでアカウントを削除する必要があります。