Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Does Android X86 in virtual machine represent a real alternative to Android Emulator?

I am developing an Android application with jQuery Mobile, Phonegap and the jQuery plugin for Google maps. The emulator takes too long to load a web page, making the test of my code a painful operation. I have installed Android x86 on a virtual machine and linked it to Eclipse to debug my application.

This solution is faster than the emulator but the problem is that my application always crashes, which is not the case in the emulator. This leads me to question: is Android x86 on a virtual machine a stable alternative to the emulator?

like image 525
zizoujab Avatar asked Aug 03 '12 17:08

zizoujab


People also ask

Is Android x86 an emulator?

Android-x86 is an open source project that makes an unofficial porting of the Android mobile operating system developed by the Open Handset Alliance to run on devices powered by x86 processors, rather than RISC-based ARM chips.

Can you run Android OS on a virtual machine?

Of course, if you want to run it on your computer instead of your phone, be it for testing purposes or just for fun, you can do that. All you need to do is to install your chosen version of Android on a normal virtual machine or VM using VirtualBox.

What is Android x86 based on?

Android-x86 is a free, open source project based on AOSP (the Android Open Source Project). It's designed to run on x86 processors from Intel and AMD.

Can I run Android in VirtualBox?

Download the Android x86 ISO File Wherein two RPM files are for Linux users and the K49 ISO file is for VMWare. The 32-bit and 64-bit ISO are what you need. You can use the two files to install Android on VirtualBox or physical devices.


2 Answers

In my experience, the answer is definitely Yes.

Unlike the situation you are describing, my application never crashes on the Android-x86 VM and since the SDK's emulator doesn't support microphone input, it is actually the only way to test my app without having to purchase a real device for each variant of Android.

Also, as you noted, it runs much faster. Contrary to Google's claim for "near native speed", Android's SDK runs extremely more slowly than Android-x86 and it is certainly slower than a real phone or tablet.

The fact that your application crashes when run on an Android-x86 VM may actually be a good thing: An opportunity to check for ways to make your application more robust in unforeseeable circumstances (you know, there are many types of devices out there).

The only downside to Android-x86 is that it is only available up to ICS (Android 4.0.4) which means that you cannot test your application in Jelly Bean (Android 4.1.x). That may be solvable by building your own VirtualBox-AOSP.

like image 85
Eternal Learner Avatar answered Oct 31 '22 01:10

Eternal Learner


A lot of virtualization software and systems depend on hardware virtualization capability of the CPU (VT and such), but VirtualBox runs Android x86 (eeepc iso) great (fast) even without it. There are obvious limitations, but bear in mind that any emulator can only go so far.

If your CPU has no support for hardware virtualization, it is a very good alternative.

like image 36
Ate Somebits Avatar answered Oct 31 '22 01:10

Ate Somebits