/

¿Qué es Android System WebView y deberías desinstalarlo?

Android System WebView es un componente fundamental del sistema operativo Android. Descubra qué hace, por qué lo necesita y cómo funciona.

Escrito por:

android system webview que es

Publicado:

Inicio » Seguridad » ¿Qué es Android System WebView y deberías desinstalarlo?

Android System WebView es un componente del sistema operativo Android que permite a las aplicaciones Android mostrar contenido web directamente dentro de una aplicación.

Hay dos formas de abrir contenido web en un dispositivo Android: utilizando un navegador web tradicional o una aplicación Android que incluya WebView en el diseño.

Android WebView se basa en el motor de código abierto Chromium. Es el mismo motor que utiliza Google Chrome.

Un desarrollador que desee añadir funcionalidad de navegador a una aplicación puede incluir la biblioteca WebView y crear una instancia de una clase WebView. Este enfoque esencialmente incorpora un navegador dentro de la aplicación para hacer cosas como renderizar páginas web y ejecutar scripts.

En el pasado, WebView estaba estrechamente vinculado al sistema operativo, y sólo se actualizaba cuando se lanzaba una nueva versión del mismo. Este calendario de lanzamientos más lento hacía posible que un exploit corregido en Chrome aún no lo estuviera en WebView. Ahora es una aplicación independiente que puede actualizarse a través de la tienda de aplicaciones Google Play.

Todos los sistemas operativos tienen un componente WebView equivalente. En Windows 11, se trata de Edge WebView2, y en iOS y macOS, de WKWebView.

webview inicio de sesion
Cuando se utiliza Android System WebView para incorporar una función de inicio de sesión, los usuarios son llevados a una pantalla de inicio de sesión web dentro de la aplicación. Al salir de la página de inicio de sesión, regresan a la aplicación.

¿Por qué es necesario Android System WebView?

Android System WebView permite a las aplicaciones mostrar contenido web en una aplicación en lugar de transportar al usuario a otro navegador. Los desarrolladores de Android utilizan WebView cuando quieren mostrar páginas web o contenido de Hypertext Markup Language en una app de Google u otra aplicación.

Los siguientes son ejemplos de cómo WebView puede ser utilizado para incrustar páginas web:

  • Cuando los usuarios hacen clic en un enlace de política de privacidad en una pantalla de una aplicación Android System WebView, la aplicación abre una página web con el contenido de la política de privacidad en lugar de llevarlos a un navegador.
  • Los usuarios utilizan una cuenta de redes sociales para iniciar sesión en una aplicación. Los desarrolladores utilizan WebView para incrustar la ventana de inicio de sesión de una aplicación de redes sociales dentro de su aplicación y ofrecer a los usuarios la posibilidad de elegir cómo iniciar sesión. En lugar de codificar una función de inicio de sesión desde cero, WebView permite a los desarrolladores importar la función de inicio de sesión social.
  • WebView se utiliza para tomar un sitio web existente y presentarlo como una aplicación nativa. Usar WebView de esta manera es un método de bajo código para construir aplicaciones híbridas que liberan a los desarrolladores de tener que codificar aplicaciones nativas desde cero.

Los actores maliciosos pueden utilizar WebView para explotar los dispositivos, utilizando tácticas como cross-site scripting. Por eso es importante que Android System WebView se mantenga actualizado.

Historia de Android System WebView

Las primeras versiones de WebView estaban integradas como parte del núcleo del sistema operativo Android. Los usuarios sólo podían actualizar WebView a través de actualizaciones mayores del sistema. Dado que cada fabricante de dispositivos publica sus propias actualizaciones del sistema, a veces había que esperar mucho tiempo entre el momento en que Google publicaba el código para corregir un fallo en WebView y el momento en que un fabricante publicaba la actualización.

Con el lanzamiento de Android 5, Google separó WebView del núcleo del sistema operativo. Con este cambio, las actualizaciones de WebView podían distribuirse a través de la aplicación Google Play Store, y los usuarios podían actualizar WebView independientemente del sistema operativo. Si se detectaba un problema en el componente WebView, Google publicaba una corrección de errores que los usuarios podían instalar sin tener que actualizar Android por completo.

Google combinó WebView con Google Chrome para las versiones 7, 8 y 9 de Android. Sin embargo, con Android 10, WebView volvió a ser un componente independiente. Los usuarios pueden actualizar WebView en Android 10 o superior a través de Google Play. A veces esto requiere que borren los datos almacenados en la caché de la aplicación antes de descargar la actualización.

Google ya no proporciona parches para vulnerabilidades encontradas en versiones anteriores — 4.3 y anteriores — de Android. Para proteger los dispositivos de ataques que podrían explotar las capacidades de WebView, la empresa recomienda a los usuarios de Android que ejecuten la última versión del sistema operativo y actualicen WebView cuando se les solicite.

¿Es seguro desinstalar Android System WebView?

No es seguro desinstalar Android System WebView. Las versiones recientes de WebView son imposibles de desinstalar completamente porque es software del sistema y viene preinstalado en los dispositivos Android. Debido a que WebView carga contenido de sitios web, eliminar las actualizaciones de WebView eliminará los parches de seguridad recientes y podría dejar el sistema vulnerable a ataques de software malicioso.

Sin embargo, puede desactivarse en determinadas versiones de Android. Los usuarios pueden querer desactivar WebView por las siguientes razones:

  • No están familiarizados con la aplicación Android System WebView y la confunden con spyware malicioso o bloatware inútil.
  • Consume más recursos de los que les gusta.
  • Tienen una mala experiencia de usuario, lo que ocurre ocasionalmente porque WebView puede estar mal integrado en una aplicación.
  • WebView no funciona de forma consistente en diferentes versiones de Android.

Google no aconseja desactivar WebView; los usuarios deben mantenerlo activado y actualizado. Sin embargo, es posible que los usuarios de Android 7, 8 y 9 deseen desactivarlo para ahorrar capacidad de procesamiento o memoria, o para evitar bloqueos relacionados con errores de actualización. Los usuarios pueden desactivar con seguridad WebView del sistema Android en las siguientes versiones de Android sin experimentar consecuencias adversas:

  • Android 7 Nougat.
  • Android 8 Oreo.
  • Android 9 Pie.

Siga estos pasos para desactivar WebView en las tres versiones mencionadas anteriormente:

  • Ve a Ajustes > Apps/Aplicaciones > Más > Mostrar sistema.
  • Desplázate hasta y selecciona Android WebView.
  • Pulse Desactivar.

En Android 7, 8 y 9, Google Chrome se encarga de las funciones de navegación integradas. En otras versiones del sistema operativo Android, el rendimiento de las aplicaciones web podría verse afectado si WebView no está activado. Funcionar sin WebView también puede introducir un riesgo de seguridad porque desactiva la configuración de seguridad predeterminada de Android para incrustar contenido web en las aplicaciones. Los desarrolladores pueden utilizar código de terceros en lugar de WebView o navegadores Android alternativos para realizar la misma tarea, aunque el código de terceros podría tener más vulnerabilidades integradas.

Cómo borrar los datos de WebView

Android WebView tiene una caché y datos de aplicación. Esto puede almacenar páginas cargadas y cookies. Aunque generalmente no es necesario, borrar estos datos puede liberar espacio de almacenamiento o resolver algunos problemas. Dado que estos datos pueden ser utilizados por otras aplicaciones, es posible que los usuarios tengan que volver a autenticarse o configurar aplicaciones de nuevo después de borrarlos.

  1. Vaya a Ajustes > Aplicaciones > Ver todas.
  2. Desplázate hasta y selecciona Android WebView.
  3. Pulse Almacenamiento y caché.
  4. Pulse Borrar almacenamiento o Borrar caché.

Cómo añadir WebView a una aplicación

Para añadir WebView a una app, un desarrollador primero añade un componente WebView a su archivo XML (Extensible Markup Language), después le da un ID y llama a la función loadUrl() sobre él.

JournalDev — ahora parte de DigitalOcean — proporciona el siguiente ejemplo de cómo insertar WebView en un archivo XML en Android Studio utilizando el lenguaje de programación Kotlin:

<WebView android:id="@+id/webview"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_width="match_parent"
android:layout_height="match_parent"/>

Para darle un ID, un desarrollador escribiría lo siguiente o algo similar:

WebView = (webView) findViewById(R.id.webview);

Y, por último, para pasar la URL de una página web como argumento en la aplicación, el desarrollador escribiría lo siguiente:

webView.loadUrl("https://www.ejemplo.com");

El método utilizado para añadir WebView puede diferir ligeramente en función del lenguaje utilizado para escribir la aplicación. WebView puede incrustarse tanto en aplicaciones Android como en aplicaciones iOS en iPhones y iPads.

JavaScript en WebView

JavaScript en WebView está desactivado por defecto. Esto significa que las páginas web que contengan referencias JavaScript no funcionarán correctamente. Para habilitar JavaScript, un desarrollador que utilice la línea de comandos Kotlin añadiría el siguiente código a la instancia WebView:

getSettings().setJavaScriptEnabled(true);

A los usuarios finales puede resultarles útil utilizar JavaScript con Android WebView para que determinadas aplicaciones funcionen como es debido. Para habilitar JavaScript en WebView en Chrome, siga estos seis pasos:

  1. Haga clic en los tres puntos apilados junto a la barra de URL en el navegador.
  2. Selecciona Configuración en el menú desplegable.
  3. Bajo el encabezado Avanzado, seleccione Configuración del sitio.
  4. Seleccione JavaScript.
  5. Mueva el switch a la derecha para activar JavaScript.
  6. Actualice el navegador.

¿Te ha resultado útil esta información?

No
¡Gracias por tus comentarios!