Por qué es hora de que los desarrolladores de Android reconsideren WebView


Jack Wallen ofrece su opinión sobre el problema reciente que rodea a WebView de Android.

mobilesecurityprivacyistock-908468844marchmeena29.jpg

Imagen: iStockphoto / marchmeena29

En los últimos días, los usuarios de Android se encontraron en una situación bastante frustrante con aplicaciones aleatorias que fallaban cuando se abrían enlaces. Resulta que el problema era WebView del sistema Android.

Esa aplicación en certain que ha sido bastante problemática a lo largo de los años. Incluso en los primeros días, WebView era problemático porque, con un puente JavaScript habilitado, una página world-wide-web vista en WebView podía ejecutar código como la propia aplicación WebView. Ese fue un problema de seguridad grave.

No fue hasta Android 5 que WebView se movió del sistema para que existiera como una aplicación por sí misma. En ese momento, WebView incorporó las protecciones de navegación segura de Google. Luego, en Android 8, el renderizador WebView se cambió para ejecutarse en un proceso aislado, lo que significaba que tenía acceso limitado a los recursos.

El problema es que hay muchas partes móviles para WebView. Está la aplicación en sí, están los subsistemas de Android, están las aplicaciones que dependen de WebView, están los desarrolladores que pueden hacer uso de JavaScript, que luego depende de un servidor de terceros que puede o no usar SSL correctamente.

VER: Samsung Galaxy Desempacado 2020: Galaxy Z Fold2, Samsung Galaxy S20 y más (PDF gratuito) (TechRepublic)

¿Qué es WebView?

En pocas palabras, Android WebView permite que las aplicaciones muestren contenido website sin tener que abrir un navegador net. Hasta Android 6, WebView era un servicio de sistema. Luego, con Android 7., Google incorporó esa funcionalidad en el navegador Chrome predeterminado. Por supuesto, en la forma típica de Google, los desarrolladores luego devolvieron las tareas de WebView a Process WebView para Android 10 y no han cambiado ese comportamiento desde entonces.

Para algunas versiones de Android, puede deshabilitar WebView de forma segura y permitir que Chrome se encargue de esas tareas, pero con todas las versiones modernas, no puede hacerlo. Google quiere que utilice WebView para ver todo el contenido world wide web fuera del navegador.

Eso es un problema porque cada vez que algo sale mal con WebView, cada vez que una aplicación necesita abrir contenido web (que es a menudo), se bloqueará o el contenido simplemente no se procesará. Me gustaría decir que no es tan importante pero la verdad del asunto es que es un gran problema. Las aplicaciones de Android dependen de la capacidad de renderizar contenido world-wide-web. Debido a que WebView también depende de que los desarrolladores lancen aplicaciones que se ocupen de esto de manera segura, los usuarios están a su merced.

Aunque esta perfecta integración del código de la aplicación nativa y HTML / JavaScript facilita las cosas a los desarrolladores, expone a los usuarios al crear una mayor superficie de ataque para la plataforma. Con la mayor superficie de ataque que ofrece WebView a Android, no se trata solo de si una aplicación se bloqueará o el contenido no se procesará, sino también de la seguridad. Con WebView asumiendo tareas que podrían revertirse fácilmente en el Chrome más seguro, es un truco por parte de Google.

Hay que repensarlo.

¿Pero cómo? En su forma actual, Android pone la responsabilidad en los desarrolladores y usuarios de aplicaciones. Por más que lo intenten, Google parece que no puede colocar WebView en una posición que ofrezca a cualquiera de las comunidades una solución confiable para empezar.

Este episodio más reciente con WebView solo lo demuestra.

Aunque Google implementó una solución para el problema, ¿cuántas personas tuvieron que lidiar con el problema antes de que llegara el parche? Debido a que el problema se presentó en múltiples aplicaciones, podría haber sido un problema grave para los usuarios comerciales en movimiento o para aquellos que confían en sus teléfonos como herramienta de comunicación principal.

Google no puede dar la espalda al problema de WebView. Dada su historia, sabemos que sucederá algo más con el sistema. Dado que muchas aplicaciones dependen de WebView y el sistema muestra tanto contenido, no se puede pasar por alto la importancia de este problema.

Con ese fin, Google necesita repensar seriamente WebView. Puede que sea demasiado tarde para Android 12, pero tan pronto como los desarrolladores y diseñadores comiencen a idear suggestions para el lanzamiento número 13 de la plataforma, necesitarán dedicar mucho tiempo a repensar y rediseñar WebView. Tal como está, es solo cuestión de tiempo antes de que se explote una falla crítica en WebView y los dispositivos sean víctimas del robo de datos y más.

No tengo la respuesta a esto, pero una cosa que diré es que la respuesta podría volver a Android 7 y la capacidad de deshabilitar WebView, a favor de Chrome. Si esa es una opción, tal vez se deba considerar una versión híbrida, donde un sistema equivalent a WebView puede transferir las tareas a una versión simplificada de Chrome para mostrar el contenido.

Google tiene algunos desarrolladores realmente brillantes que trabajan en Android. Si se les da el tiempo y los recursos, estoy seguro de que pueden encontrar una solución feasible para los problemas provocados por WebView.

Hasta entonces, los usuarios estarán a merced de este sistema poco confiable. Para todos los usuarios, les diría que siempre que puedan abrir enlaces u otro contenido en Chrome, lo hagan. Confiar siempre en WebView puede ocasionar problemas.

Los dedos tacharon las cifras de Google más temprano que tarde.

Suscríbase a Cómo hacer que la tecnología funcione en YouTube de TechRepublic para obtener los últimos consejos tecnológicos para profesionales de negocios de Jack Wallen.

Ver también



Enlace a la noticia unique