Blank White Screen on Android 4.0.3

6,452 views
Skip to first unread message

Rachel Gollub

unread,
Dec 30, 2011, 3:13:10 PM12/30/11
to phon...@googlegroups.com
Hi,

I have an app that's been working beautifully on android and iphone for a while.  My Nexus S was just upgraded to Android 4.0.3, and when I started my app, all I saw was a blank white screen (saw the loading screen just fine, but instead of my app showing up, I saw the white screen).  I downloaded the Android 4.0.3 SDK and emulator, and ran it, and saw the same thing.  PhoneGap points to a Google App Engine site in my app, and when I point the browser to the actual GAE site, it works fine.  It's just through PhoneGap that it's failing... I ran the debugger, and the only error I see is "call to OpenGL ES API with no current context (logged once per thread)".  I'm using PhoneGap 1.3.0 and the latest GAE.

App works fine on all other OS's and devices I've tried.  Anyone know what's going on?

Debugger output:
12-30 11:56:25.166: I/System.out(674): waiting for debugger to settle...
12-30 11:56:25.432: I/System.out(674): debugger has settled (1420)
12-30 11:56:26.552: I/PhoneGapLog(674): Changing log level to DEBUG(3)
12-30 11:56:27.352: I/dalvikvm-heap(674): Grow heap (frag case) to 9.619MB for 614416-byte allocation
12-30 11:56:28.652: I/Ads(674): To get test ads on this device, call adRequest.addTestDevice(AdRequest.TEST_EMULATOR);
12-30 11:56:41.033: I/Ads(674): onReceiveAd()
12-30 11:56:46.243: E/libEGL(674): call to OpenGL ES API with no current context (logged once per thread)
12-30 11:56:46.243: E/libEGL(674): call to OpenGL ES API with no current context (logged once per thread)
12-30 11:56:46.254: E/libEGL(674): call to OpenGL ES API with no current context (logged once per thread)
12-30 11:56:46.254: E/libEGL(674): call to OpenGL ES API with no current context (logged once per thread)
12-30 11:56:46.254: E/libEGL(674): call to OpenGL ES API with no current context (logged once per thread)

-- Rachel

az

unread,
Jan 3, 2012, 1:25:10 AM1/3/12
to phonegap
Hi,

Unfortunately, I'm having the same issue. I don't have a physical ICS
device, but I can't get my app to run successfully in the 4.0.3
emulator.
It shows the spash screen and then just a blank white page. Works
fine
in all other emulators.

Note: unlike Rachel I'm not using Google App Engine. Just PhoneGap
and jQuery Mobile.

Anyone have any thoughts? Rachel, have you made any headway?

thanks!
az


On Dec 30 2011, 12:13 pm, Rachel Gollub <rachelgol...@gmail.com>
wrote:

Mystique

unread,
Jan 3, 2012, 1:33:00 AM1/3/12
to phonegap
I have that even on HoneyComb!

az

unread,
Jan 3, 2012, 5:09:09 AM1/3/12
to phonegap
Hi guys,

In my case it looks like it was caused by an iframe that
attempted to load an admob banner ad. I'm still investigating
the exact issue, but without the iframe the app loads
properly in the Android 4.0.3 emulator.

:]
az


On Jan 2, 10:33 pm, Mystique <joven.ch...@gmail.com> wrote:
> I have that even on HoneyComb!
>
> On Jan 3, 2:25 pm, az <alon...@gmail.com> wrote:
>
>
>
>
>
>
>
> > Hi,
>
> > Unfortunately, I'm having the same issue.  I don't have a physical ICS
> > device, but I can't get my app to run successfully in the4.0.3
> > emulator.
> > It shows the spash screen and then just ablankwhite page.  Works
> > fine
> > in all other emulators.
>
> > Note:  unlike Rachel I'm not using Google App Engine.  Just PhoneGap
> > and jQuery Mobile.
>
> > Anyone have any thoughts?  Rachel, have you made any headway?
>
> > thanks!
> > az
>
> > On Dec 30 2011, 12:13 pm, Rachel Gollub <rachelgol...@gmail.com>
> > wrote:
>
> > > Hi,
>
> > > I have an app that's been working beautifully onandroidand iphone for a
> > > while.  My Nexus S was just upgraded toAndroid4.0.3, and when I started
> > > my app, all I saw was ablankwhite screen (saw the loading screen just
> > > fine, but instead of my app showing up, I saw the white screen).  I
> > > downloaded theAndroid4.0.3 SDK and emulator, and ran it, and saw the same

Rachel Gollub

unread,
Jan 3, 2012, 12:55:15 PM1/3/12
to phonegap
Wow -- I'm using AdMob, but through the plugin. I took it out, still
blank white. I found a workaround -- instead of pointing to
file:///.../index.html, I'm pointing directly to the online website:
http://.../index.html . This works, but it's not ideal, so I'll keep
looking.

Thanks for the info on what fixed it for you... gives me some more
ideas where to look. Wonder if my local filesystem code has an iframe
I forgot to delete somewhere....

-- Rachel
> > > > fine, but instead of my app showing up, I saw thewhitescreen).  I

dearwish

unread,
Jan 6, 2012, 2:07:17 PM1/6/12
to phon...@googlegroups.com
I have the same problem while trying to use a remote (http://...)
application with <video> tag on my Asus tablet with Android v3.2.
Once the video tag is loaded, it throws the "call to OpenGL ES API
with no current context" error. I think this is related to Android
WebView implementation, because the same URL is working good when
I am loading it inside the chrome browser on this tablet and even
the video is playing fine.

Simon MacDonald

unread,
Jan 6, 2012, 8:12:33 PM1/6/12
to phon...@googlegroups.com
The <video/> tag does not work properly in the WebView.

Simon Mac Donald
http://hi.im/simonmacdonald





--
You received this message because you are subscribed to the Google
Groups "phonegap" group.
To post to this group, send email to phon...@googlegroups.com
To unsubscribe from this group, send email to
phonegap+u...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/phonegap?hl=en?hl=en

For more info on PhoneGap or to download the code go to www.phonegap.com

dearwish

unread,
Jan 8, 2012, 8:44:07 AM1/8/12
to phon...@googlegroups.com
Hi Simon,

Unfortunately this is the case, but the interesting thing is that in version
Android v3.2 with PhoneGap v1.3 the video does start loading and even plays the
sound, but I can't see the view itself (and the libEGL exception appears in
log). So it seems that there is some progress, but still not enough.

I hope this will be fixed in the future.

Simon Mac Donald wrote:

GregF

unread,
Jan 9, 2012, 8:31:14 AM1/9/12
to phonegap
I have had this white screen issue before if I try to do any async web
action at load time (ads, retrieving ajax, etc). I got around this by
making my first phonegap page have nothing but html and a little
javascript that is triggered after phonegap was happy. Basically a
splash after the splash. Hope that helps.

--Greg Frame

Dom

unread,
Jan 17, 2012, 7:14:02 PM1/17/12
to phonegap
Some comments:

For Android 3.2 try the combination
android:hardwareAccelerated="true" (in manifest, on application level)
and webView.getSettings().setPluginState(State.ON_DEMAND). That worked
for me once to display videos. I had to deactivate it again though
because it would slow down other parts of the UI (had a very heavy
JavaScript-based UI). But if that's not the case for you, probably you
can show the videos with the above trick (btw, I just wrote the code
down like I had it in mind, probably the methods are called a little
different).

As for the white screen issue, just had to deal with it today. In my
case I loaded a GWT compiled app into phonegap. Turns out that GWT
creates "XYZ.cache.html" files which will be called to load
JavaScript. With Android 4.0, those html files are directly loaded
into the WebView!!! Of course, they don't have any content, so the
screen gets white and no error at all shows up (pretty bad for
debugging :|). Probably you face a similar issue? Check your LogCat
for DroidGap.loadURL(XYZ) statements. If there's anything loaded that
could be empty html, that's probably the cause for the white screen.

As for the OpenGL errors... don't know if they're that important (as
well as the sqlLite errors that I used to get), my application works
(still prototype though ;) even though it errors a lot!

-Dom

Daniel Kurka

unread,
Jan 18, 2012, 6:49:11 PM1/18/12
to phon...@googlegroups.com
Hi Dom,

if you do have problems with the gwt and the .cache files use another linker in your gwt xml file.

I had some issues on ios 3.0 with the standard boot way of gwt in phonegap apps, the cross site scripting linker solves those problems (may yours as well..)

-Daniel

http://www.m-gwt.com
.

Dom

unread,
Jan 18, 2012, 7:42:11 PM1/18/12
to phonegap
Daniel,

thanks for your answer, that's how I solved it in the end, too. Adding

<add-linker name="xs" />

to the gwt.xml file. But strangely enough, parts of my application
started to behave differently. Haven't investigated further though.
Probably the linker changes quite some stuff in the application. But
I'm getting off topic ;).

Thanks,
Dom

Daniel Kurka

unread,
Jan 18, 2012, 7:47:16 PM1/18/12
to phon...@googlegroups.com
yes maybe we should take this up on the mgwt / gwt-phonegap mailing list:  https://groups.google.com/forum/#!forum/mgwt

Rachel Gollub

unread,
Jan 18, 2012, 11:02:07 PM1/18/12
to phonegap
Wow, that totally worked for me! Thanks, Daniel and Dom -- really
good find.

-- Rachel

Dom

unread,
Jan 20, 2012, 8:31:53 AM1/20/12
to phonegap
Glad to help. Btw, Daniel, really nice frameworks mgwt / gwt-phonegap,
just found them recently, so apart from some test application I didn't
use them so far, but it looks impressive!

-Dom

Daniel Kurka

unread,
Jan 21, 2012, 1:52:39 PM1/21/12
to phon...@googlegroups.com
Thanks Dom,

a lot of work went into it and still is going into it :)

- Daniel

franzisco2011

unread,
Jan 25, 2012, 6:24:04 PM1/25/12
to phonegap
Yeah works on my honeycomb 3.2.
But how you intercept the video to enable hardwareacceleration?
Have you used a javascript interface?

Thanks a lot!

On 18 Gen, 01:14, Dom <dominik.buc...@gmail.com> wrote:
> Some comments:
>
> ForAndroid3.2 try the combinationandroid:hardwareAccelerated="true" (in manifest, on application level)
> and webView.getSettings().setPluginState(State.ON_DEMAND). That worked
> for me once to display videos. I had to deactivate it again though
> because it would slow down other parts of the UI (had a very heavy
> JavaScript-based UI). But if that's not the case for you, probably you
> can show the videos with the above trick (btw, I just wrote the code
> down like I had it in mind, probably the methods are called a little
> different).
>
> As for the white screen issue, just had to deal with it today. In my
> case I loaded a GWT compiled app into phonegap. Turns out that GWT
> creates "XYZ.cache.html" files which will be called to load
> JavaScript. WithAndroid4.0, those html files are directly loaded

Dom

unread,
Jan 29, 2012, 12:45:16 PM1/29/12
to phonegap
Well, in the end I didn't use hardwareacceleration, because of
performance issues on android 2.x devices. But you can intercept
videos via the onDownloadStarted() of the WebView (in it's
WebViewClient or WebChromeClient) I guess. You'll have to overwrite
the method to catch videos and do things there. It's an Android thing
though and not controllable from gwt. Probably you could write a
javascript interface, I wouldn't see of a very easy way right now
though.

Daniel Kurka

unread,
Apr 16, 2012, 12:06:12 PM4/16/12
to phon...@googlegroups.com
I did some more digging why this happens and instead of switching to another linker I took a look at the root cause:

Reply all
Reply to author
Forward
0 new messages