There are many mobile app development frameworks out there. Most of those frameworks attempt to solve one big problem - compatibility across the many mobile platforms. The idea is to write your app once, and compile to run on all (or at least most) major mobile platforms. Personally, I have tried PhoneGap, and also have heard that Titanium is pretty neat too.
Today, I found Ruboto. Ruboto is fundamentally different from PhoneGap and Titanium. Ruboto compiles only to Android. Ruboto is made possible by JRuby, an implementation of Ruby using Java. JRuby allows Ruby code calling Java libraries, and Java code calling Ruby libraries. As such, it is natural to have something like Ruboto.
The installation process of Ruboto is relatively straightforward:
brew install antif you are using Homebrew.)
gem install jruby-jars)
ANDROID_HOMEenvironment variable. (Set it to point to the absolute path of the
sdkdirectory of the Android SDK that you have installed in step 2. Make sure that you are using absolute page, according to the documentation of Ruboto, Java does not expand
ruboto setupto iron out any other problems.
Ruboto comes with a code generator. Run
ruboto gen app --package com.example.test --name test --target android-19 cd test rake
rake will build the APK file, which will be located in
bin/Test-debug.apk. If you have configured a virtual device, or have connected an Android device to your machine, you can run
rake install to install the app.
--with-jrubyflag when running the
gen appcommand. The resulting APK is much larger. For this particular example, we have ~9MB vs ~80KB. Also it takes a longer time to compile (2 mins 16 sec vs 8 sec).