RubyとHTMLのコードを書けばAndroid、iPhone、Black Berry、Windows Mobile、Symbianで動作するネイティブアプリケーションを構築できるオープンソースのフレームワーク「Rhodes」をインストールしてみた。
2.0になってライセンスもMITライセンスとなっており使いやすい。
こちらを参考に下記コマンドを実行し、rhodesのgemをインストールする。(事前にRubyがインストールされている必要がある。)
$ gem install rhodes --pre
現状は、--preオプションを付けないと1.5のバージョンがインストールされる。
続いて同期サーバのRhoSyncのインストール
$ gem install json -v=1.4.2 $ gem install log4r sqlite3-ruby rubyzip uuidtools redis resque rest-client sinatra templater rake $ gem install rhosync --pre
無事インストールが完了したら、rhodesのセットアップを行う。
$ rhodes-setup JDK path (required) (C:/java/jdk1.6.0_18):"JDKのパスを入力" Android 1.5 SDK path (blank to skip) : "Android SDKのパスを入力" Android NDK path (blank to skip) (): "Android NDKのパスを入力" Windows Mobile 6 SDK CabWiz (blank to skip) (): BlackBerry JDE 4.6 (blank to skip) (): BlackBerry JDE 4.6 MDS (blank to skip) (): BlackBerry JDE 4.2 (blank to skip) (): BlackBerry JDE 4.2 MDS (blank to skip) (): If you want to build with other BlackBerry SDK versions edit: C:/ruby/ruby-1.8.7/lib/ruby/gems/1.8/g ems/rhodes-2.0.0.beta1/rhobuild.yml
今回はAndroid版の動作環境を整えるため、WindowsMobileとBlackBerryのセットアップはパス。iPhone SDKのパスを聞いてこないのはWindowsでやってるからかな?
Invalid Android 1.5 SDK path
ってエラーが出る。このエラーを回避するには、「ANDROID_HOME」という環境変数を作成し以下のサイトからダウンロードしたandroid-sdk_r05-windows.zipを解凍したフォルダのパスを指定する。
Android SDK | Android Developers
↑の環境変数をセットした状態で、rhodes-setupをすると正常にセットアップが完了する。でも何故に?
続いて、下記チュートリアルを参考にサンプルアプリのビルドをしてみる。
RhoMobile Suite - Motorola Solutions USA
# まずアプリケーションの雛形を生成 $ rhogen app storemanager http://localhost:3000/apps/store/sources ... $ cd storemanager # 続いてモデルを生成 $ rhogen model product brand,name,price,quantity,sku
この段階で、Androidのシミュレータで動作可能か試してみる。
$ rake run:android
初回ビルド時は結構な時間がかかるけど、無事↓のような画面が実行できる。