-
16 Sep
Announcing the public Beta of RubyMotion for Android
We are super excited to announce that RubyMotion for Android is now available in public beta.
Since its introduction in May, during our annual developer conference in San Francisco, we have been working extremely hard on RubyMotion for Android, with the goal that it should be usable by early adopters.
While functional and relatively stable, RubyMotion for Android is still not ready for prime time yet. However, we do believe that it can be used by seasoned developers and we hope that we will receive enough feedback to polish the product enough that it can be used by everyone.
Availability
The RubyMotion for Android public beta is free for all customers.
Getting started
After applying the latest software update, you can install the beta by using the following command:
$ sudo motion update # make sure you have the latest update $ sudo motion update --pre # install the pre-release beta
Please follow the Getting Started guide for more information on how to set up a proper Android development environment.
Features
RubyMotion supports the following versions of Android: 1.5, 1.6, 2.1, 2.2, 2.3, 3.0, 3.1, 3.2, 4.0, 4.1, 4.2, 4.3, 4.4 and L (latest).
RubyMotion for Android apps are statically compiled into ARM machine code using our ahead-of-time (AOT) compiler. Both armv5te and armv7 architectures are supported by the compiler.
The RubyMotion for Android runtime features a brand-new implementation of Ruby, based on Java. You get to call into the entire set of Java APIs. Check out the Runtime guide for more information. Both Dalvik and ART runtimes are supported.
The command-line interface features a REPL (interactive console) that works on both the Android emulator and a USB-connected device. This works by doing remote JIT compilations from the Mac to ARM.
RubyMotion for Android apps can also vendor third-party Java libraries (jar files) and can be submitted to the Google Play store.
Make sure to check out the Android samples from our repository.
Our friends at MotionInMotion are working on RubyMotion for Android screencasts. Stay tuned!
Future work
Here are the things we will be doing in the soon future:
- Performance work; at this stage all optimizations are disabled and a lot of logging is going on (for debugging purposes). Don’t try to benchmark it.
- The runtime is still missing a lot of builtin Ruby classes and methods.
- A Mac computer is required. Some of you guys have been asking for Linux support, if there is enough demand we might consider it.
- We will provide builtin support for the other Android APIs (such as Android Wear, Android Car, etc.).
We need your help
RubyMotion for Android is still a beta at this stage. Please give it a try and report bugs to us. Your help will be essential to help us make RubyMotion for Android ready for everyone. Also, please keep in mind that this is a beta, bugs are expected!
Enjoy!