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:
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.
ha verificado esta pregunta: jquery-mobile cargado en una WebView de Android
es posible que esté utilizando las bibliotecas incorrectas. Solo revisa en cualquier caso.
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