Chrome for Android-x86 & Firefox for Android-x86 display blank viewports in VirtualBox and VMware

2,595 views
Skip to first unread message

Jay Robbie

unread,
Jul 2, 2013, 2:23:45 AM7/2/13
to andro...@googlegroups.com
To all, I searched using Google to see if anyone had a similar problem, but I could't find any leads.  I apologize in advance if this entry is a duplicate.

The short story... 

I can get both Chrome for Android-x86 and Firefox for Android-x86 to install and run in Android-x86 4.x, but the Web page viewport portion of the browser is black in Chrome, and grey in Firefox - the Web page content is actually loaded, but not visible in either browser... for any Web sites loaded.  However, the URL text area of each browser remains visible.

To test Web site designs for Android-based smartphones, I'd like these browsers to work properly.

If you know of a solution that works with Android-x86 running in a virtual machine, or can point me to an existing solution, I'd appreciate it :)


=========

The long story...

On Friday, I spent a considerable amount of time trying various versions of Android-x86 within virtual machines to be able to get Chrome & Firefox to run natively with Android-x86. 

I used VirtualBox 4.2.x and VMware 9.x with the following Android versions:  Android-x86 4.0 R1 (android-x86.org), Android-x86 4.2 Dev/Test (android-x86.org), and Android-x86 4.1.1 “androVM_vbox86tp_4.1.1_r6.1-20130222-gapps-houdini-flash” with AndroVMplayer (androvm.org).

I tested every combination in VirtualBox, but only Android-x86 4.0 R1 in VMware (I modified the VMware network adapter type so Android-x86 had network connectivity).

In each case, I was able to get Google Chrome for Android x86 (downloaded from GooglePlay – I assumed it was the x86 version) and Mozilla Firefox for Android-x86 (nightly build Aurora 23.x manually installed Android-x86 package) working.  Both browsers installed, and launched fine.  However, only the URL text entry portion of Chrome was visible – everything below it was black.  After typing and entering any URLs into Chrome, the area under the URL text entry area remained black (the page contents were not visible), but the page actually loaded since it was possible to mouse-click in the black area and randomly hit hidden HTML anchors, buttons, etc.  The same thing happened with Firefox, except instead of the browser viewport being black, it was grey… and pages loaded… but were grey.  Interestingly, Firefox could actually generate a visible thumbnail for each page it loaded for the history portion of its main page, but I could never see the actual page since it was grey.

I flagged GPU hardware acceleration on/off, changed resolutions and bit depths, etc., but after 20 hours, the only conclusion I could come up with, is that either the Android-x86 4.x versions don’t fully support the virtual machines’ video hardware emulation, or my physical ATI Radeon X1950 Crossfire Edition + ATI Radeon X1900 XT combination is the culprit… since both cards only support OpenGL 1.2.

I queried online using Google, but I could not find anyone mentioning a similar browser display problem. 

If you know of a solution that works with Android-x86 running in a virtual machine, or can point me to an existing solution, I'd appreciate it :)


Thank you.

-Jay


Maksim Lin

unread,
Jul 4, 2013, 2:51:35 AM7/4/13
to andro...@googlegroups.com
Hi Jay,

The reason is that both browsers use openGLES to display their webcontent on android and the android x86 system build does *not* include any openGLES drivers to use when running inside emulators. It does have support when running directly on machines with i915 and Radeon GPUs.

Google (and Intel?) have actually done the work to get the android SDK emulator (which is based on qemu) to be able to allow apps to use openGLES in the emulator which then offloads this to the hosts GPU but I'm not aware of this having been ported across to work in androidx86 and qmeu and certainly *not* for the Virtualbox and VMware emulators.

Maks.

Jay Robbie

unread,
Jul 4, 2013, 10:43:32 AM7/4/13
to andro...@googlegroups.com
Maks,

Thank you very much for your feedback.

I was actually investigating OpenGL ES acceleration within the Android SDK emulator solution yesterday, so I'll experiment - I see Google has also implemented some type of new "hibernate" mode to quicken initialization.  I've been using Android-x86 + VirtualBox because the SDK emulator was extremely slow, so I haven't been keeping tabs on SDK emulator updates.

Either that, or boot Android-x86 from a thumb-drive I guess ;)

(FYI - to anyone reading this, Android-x86 runs faster in VMware than VirtualBox).

Thanks again!

-Jay
Message has been deleted

Maksim Lin

unread,
Jul 4, 2013, 8:04:00 PM7/4/13
to andro...@googlegroups.com
Happy to help.

I think it must have been a while since you used the SDK emulator, as
its had available x86 images (from Intel) for quite some time now and
when run with the appropriate kernel drivers installed (see:
http://software.intel.com/en-us/articles/installing-the-intel-atom-x86-system-image-for-android-emulator-add-on-from-the-android-sdk)
its *very* fast - can't see there being much difference between it and
running androidx86 inside virtualbox or vmware.

But the SDK emulator makes things much easier if you are doing
development, its has a multitude of options for enabling features,
tweaking things like memory size, heap size, switching orientation etc
compared to running androidx86 inside a different VM - not thtat that
itself is not useful when testing androidx86 builds themselves, I dod
that all the time too.

But most importantly as the topic of this thread, using the SDLs
emulator will get you acces to the host GPU and things like firefox
work fine, of course you just need to make sure you use the **x86**
build of Firefox for android and not the ARM one.

Maks.
> --
> You received this message because you are subscribed to a topic in the
> Google Groups "Android-x86" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/android-x86/cvpWSk-yMLo/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> android-x86...@googlegroups.com.
> To post to this group, send email to andro...@googlegroups.com.
> Visit this group at http://groups.google.com/group/android-x86.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
Reply all
Reply to author
Forward
0 new messages