4

以前にも同様の質問があったことは知っていますが(ほとんど読んだことがあります)、まだ良い答えは見つかりませんでした。

iOSからTwitterでユーザーにログイン/サインアップする必要があります。私はすでにそれを行っているこのウェブサイト(www.Meer.li)を持っており、今はアプリでもそれを行う必要があります。

iOSデバイスでTwitterユーザー名にアクセスして、それがアプリのデータベースにあるかどうかを確認できることはわかっていますが、ユーザーがまだwww.Meer.liにサインアップしていない場合、どうすれば処理できますか?

些細な質問であれば申し訳ありませんが、iOS Socialフレームワークを使用するか、OAuthライブラリ(Restkitなど)を使用するかについて少し混乱しています。

誰かが私を答えや例の方向に導いてくれることを願っています!

明確にするために:

指導ありがとうございました。合理的なようです。念のために言っておきますが、これが私が次の手順を理解する方法です。

1:ユーザーがTwitterボタンでログインをクリックする

2:ユーザーのTwitterアカウントを取得し、どのアカウントを使用するかを尋ねます

3:自分のアプリとユーザーのTwitter情報のキーとシークレットを使用してTwitterにリクエストを送信します

4:良好な応答が返ってきたら、受信した情報をWebアプリのユーザーを作成するメソッドに送信し、そこからTwitterに残りのユーザー情報をリクエストします。

5:ユーザーに楽しんでもらいましょう

そうですか?なぜこれまで誰もこのフローを十分に文書化していないのですか?とても簡単にできるはずのことのように聞こえます。

4

4 に答える 4

4

注: iOS 5以降は、すべてのOAuthと手間のかかる作業を処理するため、古いバージョンのOSをサポートしている場合にのみこの回答を使用してください。

Twitter.frameworkが非推奨になった今、これを行う方法についての優れたWWDC2012プレゼンテーションがあります。ログインしてこのリンクを表示します:http://adcdownload.apple.com/wwdc_2012/wwdc_2012_session_pdfs/session_306__integrating_with_facebook_twitter_and_sina_weibo.pdf


私はこれを自分でやらなければなりませんでした。

私が見つけた最善の答えは、SeanCookのTWReverseAuthExampleでした。(私は彼のgithubプロジェクトをフォークし、それをTWReverseAuthSubModuleのARCベースのアプリのサブモジュールとして必要なものにまとめ、サンプルプロジェクトなどを削除しました。元のgithubでプロジェクトに戻ることができるとわかっていたからです。ソース。)

基本的に、この例に従うと、TwitterAPIWebページで概説されている手順に従います。

結局、あなたがする必要があるのは、ショーンの例に非常によく似たコードを作成することです。

私が最初に使用し始めたネット上の他のリソースがあり、ネストされたUIWebViewで認証を行う方法で「Twitterを使用してログイン」したり、サファリに出て専用のアプリURLを介してアプリに戻ったりすることができました。図式。これらは、iOS5.xより前の作業を行う必要がある場合に役立つ可能性があります。

ただし、上記の例では、ネイティブiOS Twitterサポートを最大限に活用しており、iOS6でも機能します。

于 2012-11-15T22:27:37.083 に答える
1

iOS5のTwitterフレームワークでのプロンプトログインアラート:iOS5のTwitterフレームワークでの プロンプトログインアラート?

iOS6のTwitterフレームワークでログインアラートを表示する:iOS6 用のTwitterフレームワークアプリから設定を介してログインする方法

于 2012-12-19T11:39:53.273 に答える
0

あなたはツイッターによって提供される逆認証方法を使うことができます、あなたはあなたのサーバーがこれをサポートする必要があります。

リンクは次のとおりです:https ://dev.twitter.com/docs/ios/using-reverse-auth

于 2012-11-16T03:33:17.433 に答える
0

iOS 5.xより前のバージョンをターゲットにしている場合は、UIWebViewを使用したOAuthログインが必要です。そして、あなたはここから私の答えをスキップすることができます...

ただし、iOS 5.0以降をターゲットにする場合は、iOSTwitterFrameworkをお勧めします。Twitterの公式ドキュメントがここに言っているように。Appleはある理由でTwitterを統合しており、iOS5.xまたは6.xを使用している人が増えているに違いない。この場合、これは単純なステップバイステップの手順であり、すべてのAPIが利用可能であり、キーやシークレットは必要ありません。

  1. ユーザーのTwitterアカウントのアカウントインスタンスを取得します
  2. 利用可能なTwitterアカウントにアクセスするための許可をユーザーに要求する
  3. 利用可能なアカウントを取得します
  4. 認証されたリクエストを行う

問題は次のようになります。ユーザーがデバイスにログインしていない場合は、[設定]に移動してログインを行うようにユーザーに通知するか、「トリッキーな」方法でログインを表示する必要があります。

- (void)showTwitterSettings{
TWTweetComposeViewController *tweetViewController = [[TWTweetComposeViewController alloc] init];

// Create the completion handler block.
[tweetViewController setCompletionHandler:^(TWTweetComposeViewControllerResult result)
 {
     [self dismissModalViewControllerAnimated:YES];
 }];

// Present the tweet composition view controller modally.
[self presentModalViewController:tweetViewController animated:YES];
//tweetViewController.view.hidden = YES;
for (UIView *view in tweetViewController.view.subviews){
    [view removeFromSuperview];
}

}

于 2012-11-16T07:34:12.897 に答える