2010-10-09

Google data APIs on iPhone

Googleの提供するサービスにiPhoneからアクセスするために、ライブラリが提供されています。公式ページはこちら

iPhoneから使うには自分でライブラリをビルドしてからアプリに組み込む必要があります。
公式ページのDownloadsにあるver 1.10.0はビルドするとエラーがでて使えなかったり、環境構築の壁がありました・・・ので、下記にビルドから組み込むまでの方法です。

(1)ソースコードをダウンロードする
公式ページで、DownloadsでなくSourcesに行くと、ソースコードのダウンロード(svnコマンド)方法が記載されています。ターミナルを起動して、そのコマンドを実行すればダウンロードできます。

(2)ターゲットを設定する
iPhoneで使うライブラリはGDataTouchStaticLibだけですので、それだけをターゲットに設定します。

(3)ビルドオプションを設定する
Googleで使いたいサービスを設定します。必要なものだけにすることでライブラリのサイズも小さくすみます。公式ページのBuildingTheLibraryに従って設定します(Removing unneeded codeのところ)。

(4)ビルド、ライブラリ作成
ReleaseビルドをiPhone device/simulator両方実行します。
両方ビルドが成功したら、lipoコマンドで2つのライブラリを1つにまとめます。

lipo -create ./Release-iphonesimulator/libGDataTouchStaticLib.a ./Release-iphoneos/libGDataTouchStaticLib.a -output libGDataTouchStaticLib.a

以上で、ライブラリの作成は完了です。各ライブラリの配下にHeaders/というフォルダもできていて、アプリから使うには、そのフォルダのヘッダーファイルと、1つにまとめたライブラリを使用します。

(5)自分のアプリに組み込む
公式ページのBuildingTheLibraryのLinking to the iPhone static libraryを参照。

ビルド環境を設定します。リンカの他のフラグ設定で、下記を追加します。
-ObjC -lxml2

ヘッダ検索パスにさきほどのHeaders/フォルダを設定します。
例:自分のホームにライブラリのフォルダをおいてビルドした場合
$(HOME)/gdata-objectivec-client/Source/build/Release-$(PLATFORM_NAME)/Headers

プロジェクトにlibGDataTouchStaticLib.aを追加。

これで、iPhone Device/Simulator両方ビルドできれば完成です。

No comments:

Post a Comment