Las burbujas en Android Q reemplazarán completamente la API de superposición en una futura versión de Android

La conferencia anual de desarrolladores de E / S de Google está repleta de noticias sobre todas las aplicaciones, servicios y herramientas de desarrollo de Google, pero el sistema operativo Android es uno de los temas más importantes. Android, que ahora se usa en más de 2.500 millones de dispositivos en todo el mundo, ocupa una gran cantidad de tiempo en Google I / O. Hay muchos cambios en la plataforma, tantos, de hecho, que es imposible que Google preste la misma atención a cada cambio. Durante la charla "Qué hay de nuevo en Android" el primer día de E / S 2019, Google anunció un próximo cambio importante a una API muy antigua: SYSTEM_ALERT_WINDOW. La API permite a los desarrolladores dibujar una superposición en la parte superior de la pantalla, y su uso más famoso es para las burbujas de chat (piense en Facebook Messenger). Ahora que Google ofrece una API alternativa a SYSTEM_ALERT_WINDOW en forma de Bubbles en Android Q, Google ha decidido desaprobar eventualmente SYSTEM_ALERT_WINDOW en una futura versión de Android.

La escritura ha estado en la pared por la inminente desaprobación de SYSTEM_ALERT_WINDOW. Permitir que una aplicación superponga ventanas sobre otras aplicaciones plantea un riesgo de seguridad obvio; el infame exploit "Cloak and Dagger" demostró que SYSTEM_ALERT_WINDOW necesitaba ser frenado.

Google comenzó a restringir las áreas en las que las superposiciones pueden retroceder en Android Oreo, y han eliminado por completo el acceso a la API para Android Q (Go Edition). El mayor problema con SYSTEM_ALERT_WINDOW es que, a pesar de que los usuarios deben hacerlo manualmente conceder el permiso a través de una pantalla especial de administración de permisos, Google Play Store automáticamente otorga acceso al permiso después de la instalación. En Android Q, el acceso al permiso SYSTEM_ALERT_WINDOW es transitorio: las aplicaciones con carga lateral solo tienen acceso al permiso durante 30 segundos y las aplicaciones instaladas a través de Google Play tienen acceso al permiso hasta que se reinicie el dispositivo.

Pero en una futura versión de Android, SYSTEM_ALERT_WINDOW quedará en desuso, y todas las aplicaciones de Android que lo usen tendrán que pasar a la nueva API de Bubbles introducida en Android Q beta 2.

Bubbles API en Android Q. Fuente: Google.

Sin embargo, las burbujas son parte de la API de notificaciones, por lo que no es un reemplazo completo de SYSTEM_ALERT_WINDOW. Aunque las burbujas se presentan en forma de una actividad pequeña y de tamaño variable, el usuario debe iniciarlas desde una notificación que cumpla con una o más de estas condiciones.

Los desarrolladores de aplicaciones que usan la API SYSTEM_ALERT_WINDOW, de las cuales hay muchas, tendrán que comenzar a buscar la API alternativa de Bubbles en el futuro cercano. Intentamos obtener un cronograma de cuándo Google planea desaprobar la API, pero no obtuvimos una respuesta. Sin embargo, supongamos que la API no se quedará por mucho tiempo: apostaría a que ya no estará disponible en Android R.

Puede ver toda la sesión "Novedades en Android" desde el siguiente enlace de YouTube (comienza a las 16:53).