iOS-TwitterとFacebook
概要
TwitterはiOS 5.0に統合され、FacebookはiOS 6.0に統合されています。本チュートリアルでは、Appleが提供するクラスを利用して、iOS 5.0とiOS 6.0でTwitterとFacebookを導入する方法に焦点を当てます。
実例手順
1. シンプルなViewベースのアプリケーションを作成します
2. プロジェクトファイルを選択し、"targets(ターゲット)"を選び、"choose frameworks(フレームワークを選択)"でSocial.frameworkとAccounts.frameworkを追加します
3. facebookPost と twitterPost という2つのボタンを追加し、それらのために ibActions を作成します
4. ViewController.h を次のように更新します
#import <Social/Social.h> #import <Accounts/Accounts.h> #import <UIKit/UIKit.h> @interface ViewController : UIViewController -(IBAction)twitterPost:(id)sender; -(IBAction)facebookPost:(id)sender; @end
5. ViewController.m を次のように更新します
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
-(IBAction)facebookPost:(id)sender{
SLComposeViewController *controller = [SLComposeViewController
composeViewControllerForServiceType:SLServiceTypeFacebook];
SLComposeViewControllerCompletionHandler myBlock =
^(SLComposeViewControllerResult result){
if (result == SLComposeViewControllerResultCancelled)
{
NSLog(@"Cancelled");
}
else
{
NSLog(@"Done");
}
[controller dismissViewControllerAnimated:YES completion:nil];
};
controller.completionHandler =myBlock;
//Adding the Text to the facebook post value from iOS
[controller setInitialText:@"My test post"];
//Adding the URL to the facebook post value from iOS
[controller addURL:[NSURL URLWithString:@"http://www.test.com"]];
//Adding the Text to the facebook post value from iOS
[self presentViewController:controller animated:YES completion:nil];
}
-(IBAction)twitterPost:(id)sender{
SLComposeViewController *tweetSheet = [SLComposeViewController
composeViewControllerForServiceType:SLServiceTypeTwitter];
[tweetSheet setInitialText:@"My test tweet"];
[self presentModalViewController:tweetSheet animated:YES];
}
@end
出力
アプリケーションを実行し、facebookPostをクリックすると、次のような出力が得られます

twitterPostをクリックすると、次のような出力が得られます
