2010年11月6日土曜日

iPhone で Picasa クライアントを作成する準備

Google Date API
http://code.google.com/intl/ja/apis/gdata/index.html

Google Date API にアクセスして、Picasa データを取得する。
iPhone で利用するためには、gdata-objectivec-client を静的ライブラリとして組み込む。

参考資料
BuildingTheLibrary の、Linking to the iPhone Static Library の内容に(ほぼ)従う。
http://code.google.com/p/gdata-objectivec-client/wiki/BuildingTheLibrary

ライブラリの準備
下記場所からダウンロードできるが、ビルドエラーが出る。
ライブラリ名:gdata-objective-client-1.10.0.zip
http://code.google.com/p/gdata-objectivec-client/downloads/list

なので、svn から直接ダウンロードして、iPhone プロジェクトのディレクトリに入れる。
http://code.google.com/p/gdata-objectivec-client/source/checkout
svn checkout http://gdata-objectivec-client.googlecode.com/svn/trunk/ gdataClient
mv  gdataClient samplePicasa


gdata-objectivec-client をビルドするための準備
1.
gdataClient -> Source -> GData.xcodeproj を開く。
2.
ビルドターゲットを GDataTouchStaticLib に変更する。
 今回作成する静的ライブラリはコレなので、他はターゲットから外す。
3-1.
ターゲット -> GDataTouchStaticLib -> 情報を見る -> ビルドタブ 構成:release を表示する。
設定 -> ベースSDK を、iPhoneデバイス4.0 に変更する。
設定 -> アーキテクチャ を、Standard に変更する。

3-2.
その他のCフラグに以下を追加する。
-DGDATA_INCLUDE_PHOTOS_SERVICE=1
 picasa を利用する場合の設定はこのようになる。それ以外のgdataを利用する場合は、参考 *2 を参照する。



4.
Simulator, Device それぞれReleaseビルドを実行する。
5.
出力されたライブラリを lipo コマンドを使用して統合する。
cd samplePicasa/gdataClient/Source/build
lipo -create Release-iphoneos/libGDataTouchStaticLib.a Release-iphonesimulator/libGDataTouchStaticLib.a -output libGDataTouchStaticLib.a


iPhoneプロジェクトにライブラリを追加する
6.
libGDataTouchStaticLib.a を iPhoneプロジェクトに追加する。
 今回のiphoneプロジェクト名は samplePicasa とする。




7-1.
samplePicasa -> 情報を見る -> ビルド 全ての構成 を表示する。
他のリンカフラグに、-ObjC -lxml2 を追加する。




7-2.
ヘッダ検索パスに、次の2つのパスを追加する。
/usr/include/libxml2 → 再帰的にチェックする。
$(SRCROOT)/gdataClient/Source/build/Release-$(PLATFORM_NAME)/Headers



8.
適当なファイルに #import "GData.h" を追加してビルドが通れば完了。


参考
*1
iPhone開発ガイド 第3章アプリケーションの実行 ビルド環境の設定
*2
Removing Unneeded Code