2011-12-18 12 views
11

El error esobteniendo un error en la vista web del sándwich de helado

java.lang.Throwable: EventHub.removeMessages(int what = 107) is not supported before the WebViewCore is set up.

Estoy llamando a un

webview.loadUrl("javascript:myJavaMethod(" + itemArr + "," + telcoID + ");"); 

en el

webview.setWebViewClient(new WebViewClient() { 
      @Override 
      public void onPageFinished(WebView view, String url) { 

Esta es una vista web juega un reproductor de video flash, todo es bueno en 2.2, 2.3.3, etc., lo intentó en el helado sándwich y sin error visible (que no sea solo una pantalla negra ni reproducción de video)

Cualquier idea.

+0

obtengo el mismo error, buscando la solución. – fargath

+0

gracias amigo, hágamelo saber si lo encuentra, yo también lo haré. – craigk

+0

yo también, buena suerte. – BillVienna

Respuesta

0

Puede llamar a webview.loadUrl ("javascript: myJavaMethod (" + itemArr + "," + telcoID + ");"); en un hilo de fondo. esto puede ser una solución.

advertirá: Se ha llamado a un método de vista web en el subproceso xxxx Todos los métodos de vista web deben invocarse en el subproceso de la interfaz de usuario.

Pero funciona.

+0

Lo intenté con una AsyncTask y no funciona. Muestra la advertencia sobre la invocación de métodos de vista web en el hilo de la interfaz de usuario, pero el error original permanece. – Theo

1

Tuve el mismo problema hasta que agregué dinámicamente la vista web a la vista.

+0

¡Esto funcionó para mí sorprendentemente! –

+2

¿Puedes explicar más? –

0

Tuve el mismo problema, y ​​agregué android: hardwareAccelerated = "true" a la Actividad real que la Webview estaba contenida en el Manifiesto. Espero que eso también te funcione. Esto parece que hay un error registrado: http://code.google.com/p/android/issues/detail?id=21177

0

Recibo el mismo error en mi aplicación, sin embargo, creo que mi problema es un error del desarrollador. Para explicar cómo obtuve este problema, describiré mal lo que hice. Estoy creando una aplicación de Android que está cargando y ejecutando una aplicación de JavaScript compilada por GWT en una WebView. Busqué muchas cosas diferentes hasta que me di cuenta de que mi problema estaba en mi propia clase WebViewClient. Hice implementar mi clase de la siguiente manera:

private static class HelloWebViewClient extends WebViewClient 
{ 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) 
    { 
     view.loadUrl(url); 
     return true; 
    } 
} 

Esto causó rápidamente la manifestación anterior. Cambié la línea anterior a la siguiente:

private static class HelloWebViewClient extends WebViewClient 
{ 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) 
    { 
     return false; 
    } 
} 

Y POOF! no más error No puedo decir que realmente pueda explicar lo que hice mal. Pero estoy seguro de que si cavara un poco más, encontraría el problema. Pero por ahora, estoy feliz de que funcione. Espero que esto sea útil para alguien :)

+0

Solo una nota, la excepción solo parecía manifestarse en ICS 4.0.1, y no parecía ser un problema en 3.0 o menos. –

2

Sé que este tema es antiguo, pero lo usé para encontrar mi solución a ese error 107. Mi solución fue reemplazar el desuso:

webview.getSettings().setPluginsEnabled (true); 

a

webview.getSettings().setPluginState(PluginState.ON); 

Ahora se reproduce el vídeo y libre de errores.

Cuestiones relacionadas