Speed up your Android dev with x86
A significant portion of my development time is simply wasted, and as they say “Time is Money.”
My Android development environment is Eclipse; not unlike most developers. However, I also find that debugging for Android on an AVD device is excruciating. The majority of my frustration comes from its lack of performance. And even after searching the web for tips and tricks to make AVD more responsive, I’m still twiddling my thumbs while the emulator tries to keep up with my requests.
If we could put men on the Moon and return them safely to Earth with little more than a TI-86 and duct tape, then surely there is a way to make my quad-core computer execute code with speed comparable to that of a mobile phone.
That was then…
After a lot of searching (because, you know, I had a lot of time between breakpoints), I pieced together information and resources from various places to come up with a better debugging emulator.
The solution that I found is an Android-x86 based system running inside of an Oracle VM VirtualBox. However, the key to this is Intel’s Houdini binary translator (libhoudini.so), which allows nearly-native execution of ARM code.
After downloading and testing many Android-x86 ISO’s, I found one that has fully integrated support for ARM right out of the box. Another key feature is that it’s not just a live image, but an installation disk as well. And as a bonus, it supports the Android market.
While I haven’t had an issue with compatibility yet, it is important that all final testing be done on AVD or a physical device before delivery.
The current version is based on Android 4.0.4 (Ice Cream Sandwich).