Twitterへのツイートの実装方法
前のエントリーで書いたようにiOS5のSDKに標準で追加されたためTwitterへのツイート機能の実装のハードルが下がり、1時間もあれば余裕で実装可能となりました。ATND暦で行なった実装した手順について書きます。
Twitter.frameworkのインポート
プロジェクトのターゲットを選択してBuild PhasesよりTwitter.frameworkを追加
Twitter.hのインクルード
実装したいViewControllerにTwitter.hをインクルード
#import <Twitter/Twitter.h>
TWTweetComposeViewControllerをモーダル表示
ツイート編集画面を表示するアクションにて、
TWTweetComposeViewControllerを生成してpresentModalします。
iOS5 SDKならブロックが使えるので通信のコールバックを拾いComposeViewControllerをdismissします。
TWTweetComposeViewController *tweetViewController = [[[TWTweetComposeViewController alloc] init] autorelease]; [tweetViewController setInitialText:@"ツイート初期文字列"]; [tweetViewController setCompletionHandler:^(TWTweetComposeViewControllerResult result) { if (result == TWTweetComposeViewControllerResultDone) { NSString *message = @"ツイートしました."; UIAlertView *alert = [[[UIAlertView alloc] initWithTitle:nil message:message delegate:nil cancelButtonTitle:@"閉じる" otherButtonTitles:nil] autorelease]; [alert show]; } [self dismissModalViewControllerAnimated:YES]; }]; [self presentModalViewController:tweetViewController animated:YES];
Twitter投稿可否の制御を行う
iOS4以前を利用している、iOS5でまだTwitterのアカウント設定を行なっていない場合などを想定して、ツイート可能かチェックします。具体的にはボタンをdisableにするなどに利用します。
if (![TWTweetComposeViewController canSendTweet]) { //ボタン非表示等 }
と以上の手順だけです。
今までは、Twitterのクライアント申請してKeyをもらい、MGTwitterEngine等のOAuth認証モジュールに頼りながら頑張って認証画面を作り認証情報を管理してツイート画面もせっせと作ってと、ツイート投稿の実装だけでも最低でも1週間くらいはかかったんですが、iOS5ではあっさり作れちゃいます。
全くTwitterに関係ないアプリだとしてもアプリ宣伝のため実装することをオススメします。