プログラミングノート

一からものを作ることが好きなエンジニアの開発ブログです。

Facebookに写真を投稿できるASFBPostControllerを公開しました。

弊社の写真アプリ(iフォトアルバムFlickPics)で提供しているFacebook投稿機能を切り出して公開しました。


ASFBPostController
https://github.com/ntaku/ASFBPostController



iOS6からFacebookが統合されますが、一般ユーザーに向けてその機能を出せるのはまだしばらく先のことになりそうですので、独自に実装する機会も多いかと思います。ただ、実際作ろうとするとUIを考えたり、認証周り整えたりと、色々面倒ですよね。ASFBPostControllerを利用してさくっと導入してしまいましょう。

インストール

1. まずはfacebook developersからFBアプリを登録
2. 次にソースコードに記載されているサンプルのIDを、上記FBアプリのIDに差し替える

  • ASFBPost-Prefix.pch
#define FB_APP_ID @"1234567"
  • ASFBPost-Infor.plist
URL types > Item 0 > URL Schemes > Item 0 > fb1234567

使い方

普通のViewControllerとしてモーダルで表示するだけです。

ASFBPostController *c = [[ASFBPostController alloc] init];
c.thumbnailImage = [UIImage imageNamed:@"sample_thumb.jpg"];    
c.originalImage = [UIImage imageNamed:@"sample.jpg"];

UINavigationController *n = [[UINavigationController alloc] initWithRootViewController:c];
n.modalPresentationStyle = UIModalPresentationFormSheet;
[c release];

[self presentModalViewController:n animated:YES];
[n release];
その他

開発中にiPhone/iPadを切り替えると認証でエラーが返ってきたりする場合があるのですが、公開中のアプリでは特に問題なく利用できています。何か変なところがありましたらご指摘頂きたく。