gdata objecttive-c client setup in XCode4
目的
xcodeプロジェクトにgdata-objectivec-clientのライブラリを設定する準備
- gdata-objectivec-client のチェックアウト
- xcodeプロジェクトを作成
1. gdata-objectivec-client のチェックアウト
以下のように,svnでgoogle codeからtrunkをチェックアウトする svn checkout http://gdata-objectivec-client.googlecode.com/svn/trunk gdata-objc-client
以下のようなエラーが発生し,json-framework(objcでjsonを扱うためのフレームワーク)が取得できないが,無視してすすめる.Authentication realm: <http://json-framework.googlecode.com:80> Google Code Subversion Repository
Password for 'uesrname':
Authentication realm: <http://json-framework.googlecode.com:80> Google Code Subversion Repository
Username:
Password for '':
svn: warning: Error handling externals definition for 'gdata-objc-client/Source/JSON':
svn: warning: OPTIONS of 'http://json-framework.googlecode.com/svn/tags/2.1.1/Source': authorization failed: Could not authenticate to server: rejected Basic challenge (http://json-framework.googlecode.com)
これは,SBJson(旧json-framework)が既にgoogle-code上にないため発生します.githubに数年前に移行済みのようです.gdata-objc-clientでも最新は必要ないが,互換性のためになんとかかんとか,ということで参照リポジトリとして指定されているようです.このへん参照本日(2012/04/07),再度チェックアウトを試みたところ,SBJSONの参照先がgithubに修正されていました.困ってた方は,’svn update’をお試しください.(よくわかりませんが,初回のcheckoutは失敗しました)
作成
適当なiOS用プロジェクトを作っておいてください.ライブラリ組込み手順
- Finderから,先ほどチェックアウトした GData.xcodeproj をドラッグ・アンド・ドロップで既存のXCodeプロジェクトのツリーに追加します.
- 新しい依存するターゲットを追加
ターゲットを選択 → Build Phases → Target Dependenciess → +ボタン
- GDataTouchStaticLib を追加
- “Link Binary With Libraries”にワークスペース欄の libGDataTouchStaticLib.aライブラリを追加します.
- 同じく“Link Binary With Libraries”に次のフレームワークを追加します.
- Security.framework
- SystemConfiguration.framework
- ビルド設定で “Other Linker Flags”に次の設定を追加:
- -ObjC
- -lxml2
- -all_load
- 同じくビルド設定で /usr/include/libxml2 を“Header Search Paths”に追加します.
- 使わないAPIを除外します:
例えば,Youtube APIだけを使う場合は,プロジェクト内のGDataプロジェクトクロスリファレンスを選び,ターゲットのGDataTouchStaticLibを選択して“Other C Flags”のDebug と Release の両方に2つの設定を追加します:
- -DGDATA_REQUIRE_SERVICE_INCLUDES=1
- -DGDATA_INCLUDE_CALENDAR_SERVICE=1
- プロジェクトをビルド
- オーガナイザーを開き,ProjectsカテゴリのGDataから,Derived dataの三角形を押してFinderを開きます.
- その中のiphonesimulatorのHeadersフォルダをドラッグ・アンド・ドロップでプロジェクトに追加します.単にリンクだけでOK.コピーしなくても良いらしいです.
- あとは,#import “GData.h”で書こう.