studio chrome based app android android-webview android-browser

chrome - Navegador de teléfono Android WebView VS



webview chrome (4)

He experimentado MUCHOS comportamientos extraños al usar WebView en Android y me pregunto por qué hay tantas diferencias entre el WebView y el Browser instalados en cada teléfono.

Como ejemplo, he desarrollado algunas aplicaciones que tenían que mostrar contenido HTML , que contenía jquery-mobile , flash , javascript , incrustado de YouTube, etc. Así que tuve muchos problemas al mostrar estas páginas dentro de WebViews . O bien no se mostrarán en absoluto, solo en blanco, o los videos no se reproducirán y así sucesivamente. Y lo extraño es que funcionan correctamente si se abren en el Browser instalado en el teléfono. Tenía JavaScript habilitado, probé diferentes WebSettings , configuré WebChromeClient y WebViewClient buscando errores de JavaScript ... pero nada funcionó.

Así que llegué a la conclusión de que el componente WebView es completamente diferente de la aplicación del Browser instalada en los teléfonos. Estoy pensando que cada fabricante hace su propio Browser para admitir el mayor número posible de páginas, y el WebView sigue siendo el estándar, incluido en el Android SDK .

¿Estoy en lo cierto? O hay otra razón / explicación para esto? Gracias.

EDITAR: Todo lo que @onoteam sugirió fue habilitado y configurado en ese momento. Ya no tengo las referencias a esos sitios web, que de todos modos eran internos.


El navegador de valores y WebView difieren. Usando todos los ajustes como

WebView browser; browser.clearFormData(); browser.clearHistory(); browser.clearCache(true); browser.getSettings().setAppCacheEnabled(true); browser.getSettings().setDatabaseEnabled(true); browser.getSettings().setDomStorageEnabled(true); browser.setWebChromeClient(new WebChromeClient());

todavía no carga imágenes de alta resolución correctamente, que el navegador de Android carga perfectamente. Solo una parte de la imagen puede ser visible en la pantalla de vista web que aparece completamente en el navegador normal de Android. Este comportamiento también se observa con el último SDK de Android 4X. Lo que significa que el navegador predeterminado de Android modifica significativamente el código web / webview para mostrar cualquier url


Este artículo describe su especulación sobre las diferencias entre los fabricantes de stock, que es absolutamente cierto: 5 verificaciones de realidad que todo equipo necesita antes de trabajar en Android webkit

... que causa problemas y es misterioso / difícil de diagnosticar / resolver problemas.

En cuanto a sus problemas con su implementación de WebView :

La versión de jquery-mobile puede ser un problema jquery-mobile cargado en un WebView de Android si está usando jquery.mobile-1.0.1.min.js es posible que desee probar el jquery.mobile-1.0.1.js sin comprimir

Y Flash: - / Buena suerte: pantalla parpadeando cuando se usa una vista web con flash

Flash en WebView no funciona en Android 3.2

El video Flash no se muestra en WebView para Android 3.0.1

Para cargar SWF:

Cargue un SWF en una WebView

cargando archivos flash (.swf) webview en android

Buena suerte con eso, parece que hay muchas variables con dispositivos, versiones de Android, etc. Y tomará persistencia con prueba / error.



WebView por defecto está restringido. Debería llamar a setWebChromeClient y a su familia para tener una experiencia de navegación decente. Además, no olvides setJavaScriptEnabled() y otras cosas similares. Lo siento por mi brevedad ... Creo que no necesitas ejemplos.

http://developer.android.com/reference/android/webkit/WebView.html