Jetpack Compose 1.13 añade diseños adaptables y AppState
La Cumbre de Desarrolladores de Android presenta Compose 1.13 con Grid, Flexbox y Jetpack AppState para unificar la interfaz de usuario y la arquitectura en móviles, plegables y escritorio.
Traducido automáticamente del original en inglés.
En la Cumbre de Desarrolladores de Android del 4 de noviembre de 2026, Google anunció actualizaciones significativas para Jetpack Compose, centradas en el desarrollo adaptable para un ecosistema multi-dispositivo. La versión introduce nuevas primitivas de diseño, herramientas de gestión de estado arquitectónico y una mejorada manipulación de entradas para soportar dispositivos que van desde teléfonos y plegables hasta pantallas de coche y el nuevo factor de forma de Googlebook.
Qué ha ocurrido
El ecosistema de Android abarca ahora una gran variedad de tamaños de pantalla y modelos de interacción, lo que convierte el desarrollo adaptable en un requisito fundamental y no en una mejora opcional. Para abordar esto, el equipo presentó Jetpack Compose como el estándar unificado para construir interfaces de usuario, alejando a los desarrolladores del sistema heredado View, que está fragmentado. El objetivo es ofrecer un único destino de desarrollo que reduzca la fricción de mantener bases de código separadas para diferentes factores de forma, garantizando al mismo tiempo que las aplicaciones permanezcan coherentes cuando se redimensionan ventanas o se pliegan las pantallas.
Una parte importante del anuncio se centró en expandir Compose más allá de la capa visual hacia la arquitectura de la aplicación. El equipo introdujo Jetpack AppState, actualmente en fase alpha, que lleva el sistema de estado basado en instantáneas (snapshots) de Compose a la capa de datos. Esto permite a los desarrolladores compartir estado observable entre actividades, servicios en segundo plano, widgets y App Functions. Además, la próxima versión estable de Compose 1.13 incluye soporte integrado para diseños adaptables mediante nuevos componentes Grid y Flexbox, junto con mejoras visuales como Progressive Blur y Formatted Text.
Los sistemas de navegación e entrada también recibieron mejoras sustanciales para manejar escenarios complejos multi-dispositivo. Jetpack Navigation 3, versión 1.2, ofrece ahora enlaces profundos tipados (type-safe deep linking) usando Kotlin Serialization, permitiendo a los desarrolladores mapear URIs directamente a claves de navegación fuertemente tipadas. En cuanto a la entrada, el sistema de entrada por capas de Compose ahora soporta trackpads, ratones y controles físicos, habilitando interacciones fluidas en dispositivos de clase escritorio como Googlebook. Para facilitar la implementación, Google lanzó habilidades actualizadas de Android para agentes de codificación, ayudando a automatizar la transformación de diseños móviles compactos en experiencias responsivas de múltiples paneles.
Cómo funciona
Jetpack AppState integra el modelo de estado reactivo de Compose en la arquitectura global de la aplicación. Introduce dos componentes principales: Transform y StateStore. Transform permite a los desarrolladores derivar estado reactivo de entradas existentes de State y Flow utilizando seguimiento automático de lecturas y flujo de control estándar de Kotlin. Esto elimina la necesidad de boilerplate complejo al combinar múltiples fuentes de datos. StateStore actúa como un contenedor clave que mantiene el estado observable, haciéndolo accesible en diferentes partes de la aplicación, incluidos servicios en segundo plano y widgets. También soporta persistencia opcional vía DataStore, asegurando la consistencia del estado incluso cuando la aplicación no está en primer plano.
Para la adaptación del diseño, Compose 1.13 introduce componentes nativos Grid y Flexbox. Estas primitivas permiten que las interfaces reorganicen el contenido dinámicamente según el espacio disponible en pantalla, en lugar de simplemente estirar los elementos. Cuando se combinan con las APIs de WindowManager, estos componentes permiten a las aplicaciones transicionar suavemente entre vistas móviles de un solo panel y diseños de escritorio o tableta de múltiples paneles. La nueva implementación de BasicTextField utiliza una arquitectura impulsada por buffers y TextFieldState para gestionar la edición de texto. Este rediseño resuelve las condiciones de carrera del Editor de Método de Entrada (IME) y soporta formato de texto enriquecido, proporcionando una experiencia de edición más fiable en dispositivos con diferentes métodos de entrada.
Detalles clave
- La versión estable de Compose 1.13 incluye diseños Grid y Flexbox integrados, soporte para Progressive Blur y Formatted Text.
- Jetpack AppState (alpha) introduce Transform para la derivación de estado reactivo y StateStore para compartir estado entre actividades y servicios.
- Jetpack Navigation 3 (versión 1.2) añade enlaces profundos tipados usando Kotlin Serialization y generación sintética de pila de retroceso (back stack).
- BasicTextField ha sido reescrito con una arquitectura impulsada por buffers para eliminar condiciones de carrera del IME y soportar texto enriquecido.
- Las nuevas habilidades de Android para agentes de codificación incluyen Adaptive, rendimiento de Compose, migración de XML a Compose y habilidades Ink.
- La manipulación de entradas se extiende ahora a trackpads, ratones y controles físicos, soportando interacciones de clase escritorio en dispositivos como Googlebook.
Por qué importa
Para los ingenieros de software que construyen aplicaciones de Android, estas actualizaciones reducen la complejidad de soportar hardware diverso. Anteriormente, adaptar una aplicación para plegables o tabletas a menudo requería ajustes manuales de diseño y lógica frágil de gestión de estado. Con los componentes nativos Grid y Flexbox, los desarrolladores pueden definir diseños responsivos declarativamente, reduciendo la cantidad de código personalizado necesario para manejar cambios en el tamaño de la ventana. Esto conduce a bases de código más mantenibles y menos errores visuales cuando los usuarios transicionan entre dispositivos.
La introducción de Jetpack AppState aborda un punto doloroso común en el desarrollo de Android a gran escala: la sincronización de estado. Al llevar el sistema de instantáneas de Compose a la capa de arquitectura, los equipos pueden asegurar que el estado de la interfaz de usuario permanezca consistente entre diferentes puntos de entrada, como widgets o servicios en segundo plano. Esto simplifica el flujo de datos y reduce el riesgo de pérdida de estado durante cambios de configuración o muerte del proceso. Además, el soporte mejorado de entrada y la navegación tipada hacen factible construir verdaderas experiencias de clase escritorio en factores de forma emergentes como Googlebook sin reinventar patrones fundamentales de interacción.
Qué puedes hacer
- Actualiza las dependencias de tu proyecto para prepararte para la versión estable de Compose 1.13 y experimenta con los nuevos diseños Grid y Flexbox.
- Explora la librería alpha de Jetpack AppState para refactorizar pipelines de estado complejos, usando Transform para derivar estado de Flows.
- Migra a Jetpack Navigation 3 versión 1.2 para implementar enlaces profundos tipados usando Kotlin Serialization para una navegación más robusta.
- Prueba la manipulación de entradas de tu aplicación con trackpads y ratones para asegurar que los estados de hover y los ciclos de vida del puntero funcionen correctamente en pantallas más grandes.
- Usa la nueva habilidad Android Adaptive en Android Studio o vía la CLI de Android para ayudar a refactorizar diseños existentes en diseños de múltiples paneles.
- Observa las sesiones bajo demanda de la Cumbre de Desarrolladores de Android, particularmente aquellas sobre perfilado con Perfetto y trazado de recomposición, para optimizar el rendimiento.



