Imagen: iStockphoto/marchmeena29

En los últimos dos días, los usuarios de Android se han encontrado en una situación bastante frustrante con aplicaciones aleatorias que fallan cuando se abren los enlaces. Resulta que el problema era Android System WebView.

Esta aplicación en particular que ha sido bastante problemática a lo largo de los años. Incluso en sus inicios, WebView era problemático porque, con un puente de JavaScript habilitado, una página web que se mostraba en WebView podía ejecutar el código como una aplicación WebView en sí misma. Era un problema de seguridad grave.

Fue solo con Android 5 que WebView se movió del sistema para existir como una aplicación completa. En este punto, WebView ha integrado 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 tantas partes móviles para WebView. Está la aplicación en sí, hay subsistemas de Android, hay aplicaciones que dependen de WebView, hay desarrolladores que podrían estar usando JavaScript, que luego depende de un servidor de terceros que puede o no usar SSL correctamente.

VER: Samsung Galaxy Unpacked 2020: Galaxy Z Fold2, Samsung Galaxy S20 y más (PDF gratuito) (República Tecnológica)

Índice
  • ¿Qué es WebView?
  • ¿Qué es WebView?

    En pocas palabras, Android WebView permite que las aplicaciones muestren contenido web, sin tener que abrir un navegador web. Hasta Android 6, WebView era un servicio del sistema. Luego, con Android 7.0, Google integró esta función en el navegador Chrome predeterminado. Por supuesto, al estilo típico de Google, los desarrolladores luego devolvieron las tareas de WebView a System WebView para Android 10 y no han cambiado ese comportamiento desde entonces.

    Para algunas versiones de Android, puede deshabilitar WebView de manera segura y permitir que Chrome maneje estas tareas, pero con todas las versiones modernas no es posible. Google quiere que use WebView para ver todo el contenido web fuera del navegador.

    Esto es un problema porque cada vez que algo sale mal con WebView, cada vez que una aplicación necesita abrir contenido web (lo que sucede a menudo), se bloquea o el contenido simplemente no aparece. Me gustaría decir que no es tan malo; pero la verdad es que es un gran problema. Las aplicaciones de Android dependen de la capacidad de mostrar contenido web. Dado que WebView también depende de la publicación de los desarrolladores de aplicaciones para manejar esto de forma segura, los usuarios están a su merced.

    Si bien esta perfecta integración del código de la aplicación nativa y HTML/JavaScript lo hace más fácil para los desarrolladores, expone a los usuarios al crear una superficie de ataque más grande para la plataforma. Con la mayor superficie de ataque que ofrece WebView para Android, no se trata solo de si una aplicación falla o si el contenido no se muestra, también es una cuestión de seguridad. Con WebView asumiendo funciones que podrían restaurarse fácilmente al Chrome más seguro, es una tirada de dados por parte de Google.

    Necesita ser rediseñado.

    ¿Pero cómo? Tal como está, Android pone la responsabilidad en los desarrolladores y usuarios de aplicaciones. A pesar de sus mejores esfuerzos, Google no logra colocar a WebView en una posición que ofrezca a ninguna de las comunidades un lugar confiable para comenzar.

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

    Aunque Google implementó una solución para el problema, ¿cuántas personas tuvieron que lidiar con el problema antes de que llegara la solución? Dado que el problema apareció en varias aplicaciones, podría haber sido un problema grave para los usuarios de negocios en movimiento o para aquellos que confían en su teléfono como su principal herramienta de comunicación.

    Google no puede alejarse del problema de WebView. Dada su historia, sabemos que algo más sucederá con el sistema. Dado que tantas 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 pensar en ideas para la versión 13 de la plataforma, tendrán que dedicar mucho tiempo a repensar y renovar WebView. Tal como están las cosas, 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 eso, pero una cosa que diré es que la respuesta podría deberse a Android 7 y la capacidad de deshabilitar WebView, a favor de Chrome. Si esa es una opción, podría haber una versión híbrida a considerar, donde un sistema similar a WebView puede transferir tareas a una versión simplificada de Chrome para mostrar contenido.

    Google tiene algunos desarrolladores realmente brillantes trabajando en Android. Dado el tiempo y los recursos, estoy seguro de que pueden encontrar una solución viable a los problemas con WebView.

    Hasta entonces, los usuarios estarán a merced de este sistema poco fiable. A todos los usuarios, les diría que siempre que puedan abrir enlaces u otro contenido en Chrome, háganlo. Confiar siempre en WebView puede generar problemas.

    Crucemos los dedos para que Google descubra este más temprano que tarde.

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