&tag(MGTwitterEngine/古い内容);
*目次 [#nfc6099c]
#contents
*参考情報 [#mf7fa2bb]
-[[MGTwitterEngine]]
*ダウンロード [#l30f5f52]
http://github.com/mattgemmell/MGTwitterEngineからダウンロードできる。
git clone http://github.com/mattgemmell/MGTwitterEngine.git
自分用
git clone git@github.com:src256/MGTwitterEngine.git
*サンプルプロジェクト作成 [#xccec75a]
**Xcodeでプロジェクト作成 [#j10fdee1]
-種類はなんでもよいのでXcodeで新規プロジェクトを作成する。
**MGTwitterEngineのソースを追加 [#w44a874a]
-わかりやすいようにMGTwitterEngineというグループを作ってそこにMGTwitter〜h/MGTwitter〜mと、NSData+Base64.h/.m、NSString+UUID.h/.mを追加する。
**OAuthConsumerのソースコードを取得 [#lb5bd7a2]
-[[OAuthConsumer]]のソースコードをダウンロードして、プロジェクトに追加する(全て)。グループを作っておいた方がわかりやすい。
**YAJLのソースコードを取得 [#ied6bbb5]
-[[YAJL]]のヘッダ&ライブラリをダウンロードして追加する。グループを作っておいた方がわかりやすい。
-プロジェクトの設定の「他のリンカフラグ(OTHER_LDFLAGS)」(?)で、-ObjC と -all_loadを追加する。
Under 'Other Linker Flags' in the Test target, add -ObjC and -all_load (So NSObject+YAJL category is loaded).
-MGTwitterEngineGlobalHeader.hを編集する
#define YAJL_AVAILABLE 1
**TouchJSON関連ファイルの除去 [#jbd7314b]
-最近TouchJSONというJSONライブラリを使うこともできるようになっているらしい。
-今回はYAJLを使うのでTouchJSON関連のファイルを除去しておく(参照を削除)。MGTwitterTouchJSONParser.h/.m
**libxmlの設定 [#me8f1b34]
-MGTwitterEngine.mの最初のほうを変更
# define USE_LIBXML 1
-ヘッダ検索パスに追加
$SDKROOT/usr/include/libxml2
-ライブラリの追加。Frameworksで右クリックし、追加→既存のフレームワークでlibxml2.dylibを選択。
**タイムラインの取得 [#xfb923fa]
RootViewController.mのviewDidLoadなどで試しによびだしてみる。タイムラインが取得できればOK。
※以下のサンプルコードはBASIC認証を使っているが、本当は使えないはずなのでxAuth OAuthなどで認証しないといけない。
#pre{{
#import "MGTwitterEngine"
- (void)viewDidLoad {
//(省略)
MGTwitterEngine *twitterEngine = [[MGTwitterEngine alloc] initWithDelegate:self];
[twitterEngine setUsername:@"xxxx" password:@"yyyyy"];
[twitterEngine getFollowedTimelineSinceID:0 startingAtPage:0 count:10];
}
- (void)statusesReceived:(NSArray *)statuses forRequest:(NSString *)connectionIdentifier {
//成功した場合
for (NSDictionary *status in statuses) {
NSLog(@"Tweet Text: %@", [status objectForKey:@"text"]);
}
}
- (void)requestFailed:(NSString *)connectionIdentifier withError:(NSError *)error {
//失敗した場合
NSLog(@"Request failed for connectionIdentifier = %@, error = %@ (%@)",
connectionIdentifier,
[error localizedDescription],
[error userInfo]);
}
}}
*xAuth対応 [#c58174dc]
-[[Life in School and Startup » Switching from Basic to xAuth with mgtwitterengine on iPhone:http://www.2bros1blog.com/2010/07/switching-from-basic-to-xauth-with-mgtwitterengine-on-iphone/]]