TitaniumでWebSocketを使いたくてtiwsをビルドする
WebSocketを使ったアプリのイメージが出来たので、Titaniumでtiwsというネイティブモジュールを自前ビルドしてみたときの覚書。
環境:Mac OS X 10.9.4, Titanium SDK 3.3.0.GA
MarketPlaceでも配布されているのでそこからダウンロードすればビルドは必要ない。
今回はtiws自体が2年間更新がなく、何かあれば自分で対応するためにビルドしてみた。
まずはGitHubからCloneする。
$ cd ~/Documents/Titanium_Studio_Workspace/
$ git clone https://github.com/iamyellow/tiws
Fork先でいくつか修正されているようなのでこちらを使うことにした。
$ git clone https://github.com/HilkoLantinga/tiws
iOS用をビルド
環境変数を変更
$ cd tiws/ios/
$ vi titanium.xcconfig
TITANIUM_SDK_VERSION = 3.3.0.GA
TITANIUM_SDK = /Users/daiki/Library/Application Support/Titanium/mobilesdk/osx/$(TITANIUM_SDK_VERSION)
ビルド実行。
$ ./build.py
カレントディレクトリに「net.iamyellow.tiws-iphone-0.3.zip」が出来る。
Android用をビルド
前の記事を参考にまずは環境を作る。
環境変数を編集。
$ cd ../android
$ vi build.properties
titanium.platform=/Users/daiki/Library/Application Support/Titanium/mobilesdk/osx/3.3.0.GA/android
android.platform=/Applications/android-sdk-macosx/platforms/android-14
google.apis=/Applications/android-sdk-macosx/add-ons/addon-google_apis-google-14
ビルド実行
$ ant
エラー
BUILD FAILED
/Users/daiki/Library/Application Support/Titanium/mobilesdk/osx/3.3.0.GA/module/android/build.xml:163: /Users/daiki/Documents/Titanium_Studio_Workspace/tiws/android/lib does not exist.
libsならあるのでシンボリックリンクを作ってみる。
$ pwd
$ ln -s /Users/daiki/Documents/Titanium_Studio_Workspace/tiws/android/libs/ lib
$ ls -l
ビルド再実行
$ ant
成功するとdistディレクトリに「net.iamyellow.tiws-android-0.1.zip」が出来る。
生成したzipファイルをこのモジュールを使うプロジェクトの直下に置いておけばビルドしたときに自動で解凍される。
< Related Posts >