Wednesday, December 30, 2009

Installing Android-x86 as a guest on Ubuntu on a Dell E6400 using VirtualBox

AndroidVirtualBox

Its funny how rabbit trails start.

After getting the kids to bed, I browsed my Twitter feed. I saw someone tweet about 10+ free, fast-booting Linux distros that aren't Chrome OS. The list includes Puppy and Jolicloud, both distros I have been meaning to try.

I then started the walk down the rabbit trail. I proceeded to install Puppy as a VirtualBox guest to see just how fast it would boot. I actually am not that impressed with the results, but that’s another story.

As I was playing with Puppy, I remembered that I wanted to play with Android, not only because its a popular topic on the web but also because we have built an Android app at work. Moving further along that trail…

I looked around for an Android ISO that I could load into VirtualBox. I found what I was looking for in LiveAndroid. It is a port for Android on x86 platforms. I downloaded the ISO image, and built up a virtual machine in VirtualBox. I won’t provide any more details of this process because in the end it didn’t work. I couldn’t get the Android UI to recognize the keyboard or mouse, and without inputs you aren’t doing much. It was weird – I could drop into the Linux prompt in the VM and the keyboard worked fine. I poked around a bit, and then found mention in the forums that it is likely an abandoned project, and linked to a different Android port. Continuing down that trail…

I moved on to the active port, called Android-x86. It looked promising, so I downloaded the ISO. I followed the instructions and created an Andriod VM for VirtualBox. In short, I got it running and it works pretty well. I even got the Tendril Android app running.

I just wanted to post to document a few things I had to do:

  • Use a good x86 Android distro – Android-x86 works for me
  • The VM How-To page doesn’t explicitly mention that you can uncheck the Boot Hard Disk option when creating the VirtualBox VM. If you do this, you will select your ISO image when you boot the image for the first time.
  • Instead of worrying about the advanced persistence steps, consider just using the Snapshot feature of VirtualBox to capture the state of your runnning VM. Restore it later to regain state.
  • If your graphics are all screwy on boot of the VM, try the VESA menu option in GRUB
  • You will need to register on AndAppStore before using the App Store in the image.
  • To emulate an SD card (necessary for installing dev Apps), use the simple RAM based emulator. At the GRUB menu, hit TAB, and then on the command line make an entry for “SDCARD=premount”

The other part of it was figuring out the user experience/key bindings. Some hints:

  • I couldn’t figure out how to go with just my laptop keyboard. I have a Windows friendly USB keyboard with additional keys that works better.
  • Windows key (lower left) – is used to bring you back to the desktop
  • Menu key (lower right) – is used to show options within an app
  • Arrow keys, enter key – do what you think
  • Esc – back button
  • After you download an app in the app store, you have to install it. To do this, you drag the upper menu bar down with the mouse+mouse click. This seems really odd, but perhaps makes sense on a mobile device?

Enjoy your free Android!

AndroidHome

Technorati Tags: ,,