Te damos la bienvenida a Now in Android, una guía que actualizamos constantemente con las novedades más importantes sobre el desarrollo de Android. Esta semana, presentamos la segunda parte de nuestra serie sobre el evento Android Developer Summit (ADS) 2021.
Se realizaron muchísimas sesiones sobre Jetpack Compose.
Uno de los anuncios más importantes de ADS fue la incorporación de Material You en Jetpack Compose, así que no hay mejor manera de comenzar que con la conferencia “Implementación de Material You con Jetpack Compose”, de Nick Rout. En ella se abarca una gran variedad de temas, como temas y componentes de Material nuevos y actualizados, colores dinámicos, cambios en la IU del sistema, interoperabilidad con temas de Material You en vistas de Android, y mucho más. Además, se implementaron estos temas con la ayuda de la nueva biblioteca androidx.compose.material3 de Jetpack. También puedes mirar la sesión de preguntas y respuestas Jetpack Compose con Material You #AskAndroid | EN VIVO para obtener más información.
Hablando de Material You, Rody Davis y Ivy Knight explicaron el funcionamiento y la aplicación de colores dinámicos en “Material You: cómo aplicar colores dinámicos a tu app y tu marca”. En esta conferencia, analizaron las paletas de tonos, cómo usar tokens de referencia y cuál será el aspecto de estos en tu app con el compilador de temas de Material, tanto en variantes independientes como Figma, y en el kit de diseño de Material 3.
Luego, Nick Butcher y George Mount realizan un “Análisis detallado de los diseños de Jetpack Compose”, en el que explican el modelo de diseño de Compose con el que puedes compilar exactamente los diseños que tu app necesita con código de mayor rendimiento. Analizan las capacidades del modelo de diseño y el modo en que funciona en un nivel profundo, de qué manera se compilan los diseños y modificadores empaquetados, y cómo puedes crear de manera sencilla diseños y modificadores personalizados.
Luego, Kris Giesing presentó Del diseño al código: cómo realizar entregas exitosas, charla en la que compartió su visión sobre cómo abordamos entregas complicadas de IU entre diseñadores y desarrolladores. El equipo de Material Design está colaborando con Figma para crear un flujo de trabajo de diseño a código que permita a los equipos crear componentes de IU en Figma y exportarlos a un paquete de IU. Este paquete se puede editar en Figma y se puede usar directamente en proyectos de Jetpack Compose para apps de Android. También se puede actualizar directamente en el código. Además, hay un programa de acceso anticipado disponible.
A continuación, Yuichi Araki y Doris Liu exploraron las maneras en que reimaginamos las animaciones de Android para Jetpack Compose, incluidas las animaciones basadas en estados, que conforman la mayoría de los casos, y las basadas en corrutinas, que se utilizan en situaciones más complejas.
Manuel Vivo explicó cómo usar la observación de estado automática de Jetpack Compose, analizó los conceptos básicos de los contenedores de estado de Compose, cuándo elevar el estado y cómo usar Android ViewModel como contenedor de estado.
Por último, Takeshi Hagikura habló sobre los cambios en los widgets de apps en Android 12, mientras que Marcel Pintó presentó las próximas API de Glance, que permitirán definir los widgets de las apps usando una sintaxis del estilo de Jetpack Compose.
La serie MAD Skills fue uno de los momentos más importantes de ADS e incluyó mucho contenido técnico nuevo sobre desarrollos modernos de Android.
Para comenzar, Tor Norbye y Jamal Eason presentaron “Novedades de Android Studio”, en la que incluyeron información sobre compatibilidad con el ciclo de vida de marcos en Android 11+, mejoras en el emulador incorporado de Studio con controles extendidos completos, y ejecución de lint visual con clases de dispositivos para ofrecer una mejor compatibilidad con pantallas grandes. Por su parte, Tor también presentó una demostración de las próximas características relacionadas con Jetpack Compose, como vistas previas interactivas con compatibilidad con desplazamiento de animaciones, compatibilidad con vista previa lateral y edición en vivo.
Elif Bilgin hizo un análisis profundo de las novedades de Room, en el que habló sobre las migraciones automáticas, incluidas las migraciones más complejas que requieren un AutoMigrationSpec, métodos de consulta relacionales, convertidores de tipo de enumeración, devoluciones de llamada de consultas, compatibilidad con API de Paging 3.0 y RxJava3, y compatibilidad experimental con Kotlin Symbol Processing para lograr mayores velocidades de compilación.
Manuel Vivo y José Alcérreca disertaron sobre cómo cargar datos en flujos de Kotlin, transformarlos y exponerlos a usuarios en tu IU, y sobre cómo probarlos, todo dentro del contexto de la programación reactiva. Exploraron el uso de los componentes repeatOnLifecycle y flowWithLifecycle, que priorizan el ciclo de vida, de lifecycle-runtime-ktx 2.4.0.
James Fung habló sobre CameraX 1.1 y en su disertación incluyó la nueva API de captura de video, las conversiones sencillas de YUV a RGB, las API de versiones beta de extensiones y mucho más.
En su disertación sobre WorkManager, Rahul Ravikumar y Ben Weiss incluyeron conceptos básicos sobre cómo solicitar y cancelar tareas persistentes de larga duración, cuándo y cómo usar las API de trabajo agilizado, cómo usar WorkManager para compilar apps multiproceso sólidas y de alto rendimiento, y cómo usar el inspector de tareas en segundo plano dentro de Android Studio.
Amanda Alexander y Sean McQuillan explicaron la importancia de los emojis, por qué es crucial ofrecer compatibilidad con los emojis más recientes y por qué se debe realizar la actualización a AppCompat 1.4. En el resto de la charla, analizaron el funcionamiento y el modo en que optimizamos emoji2.
Ivan Gavrilovic y Scott Pollom explicaron cómo es posible obtener beneficios de los cambios de la versión 7.0 del complemento de Gradle para Android. Entre estos beneficios, se incluyen características que mejoran el rendimiento, como compatibilidad con KSP, migración a clases de recursos no transitivos y almacenamiento de configuración en caché seguro gracias a las actualizaciones de Build Analyzer. También discurrieron sobre cómo crear una tarea de Gradle personalizada y compatible con el almacenamiento de configuración en caché y sobre cómo extender el complemento de Gradle para Android con sus nuevas API.
Don Turner y Andrew Louis presentaron la versión alfa de Jetpack Media3, una colección de bibliotecas de compatibilidad para reproducción de contenido multimedia, entre las que se incluye ExoPlayer. Explicaron el motivo por el cual creamos Media3, sus contenidos, los beneficios que ofrece y cómo comenzar a usarlo en tu app.
Por último, en la sesión Desarrollo moderno de Android #AskAndroid | EN VIVO, se respondieron preguntas sobre componentes de la arquitectura, Kotlin, Android Studio y rendimiento.
Android está disponible en muchos factores de forma; no solo en teléfonos, tablets y laptops con Chrome OS, sino también en relojes, televisores y autos, por lo que te permite aprovechar tus habilidades para el desarrollo en Android con el objetivo de que tu contenido llegue a una amplia variedad de dispositivos.
En primer lugar, Maia Conrado y Jeremy Walker presentaron la nueva vista previa para desarrolladores de Compose for Wear OS, mostraron las similitudes y diferencias con la versión de Jetpack Compose para dispositivos móviles, y las nuevas características. De este modo, puedes aprovechar tus habilidades relacionadas con Compose para desarrollar rápidamente tu propia app para Wear OS con menos código.
Luego, Jay Yoo y Stav Raviv explicaron cómo usar la biblioteca de apps para autos para que tu app de navegación, estacionamiento o carga llegue a más de 100 millones de vehículos que cuentan con Android Auto y a una lista creciente de fabricantes que ofrecen compatibilidad con Android Automotive OS.
Por último, Mayuri Khinvasara y Brian Lindahl hablaron sobre cómo destacar contenidos que los usuarios aún no terminaron ni implementaron en Android TV y Google TV mediante la API de Ver a continuación, y cómo usar las API de Android para transmitir audio y video de la más alta calidad.
En mi sesión hablé sobre lo que estamos haciendo para optimizar el desarrollo de juegos e incluí Android Game Development Kit, o AGDK. Destaqué los beneficios básicos de Android Studio para el desarrollo de NDK, como el uso de Visual Studio para desarrollar juegos para Android con la Android Game Development Extension y el desarrollo con las bibliotecas de C/C++ del AGDK, como GameActivity, GameTextInput y la biblioteca de controlador de juegos. Además, incluí instrucciones para que puedas llevar tu juego a más pantallas, como televisores, Chromebooks, teléfonos y tablets. Por último, aprenderás a sacar provecho de Play Asset Delivery, Android Performance Tuner, alcance y dispositivos, el Inspector de GPU de Android y los Servicios de juego de Play.
Para concluir, contamos lo que estamos haciendo en Google Play para ayudarte a llevar tu app o juego a los usuarios finales y hablamos sobre los cambios que deberás tener en cuenta.
En la sesión “Novedades de Google Play”, Lucy Hughes se explayó sobre las características nuevas y actualizadas de Google Play, como Android Vitals, calificaciones y opiniones, alcance y dispositivos, y mensajes desde la app para suscripciones de Play con facturación. Además, habló sobre las mejoras que estamos realizando en relación con la confianza y la seguridad, las actualizaciones de juegos y un nuevo curso de certificación sobre directorios de tiendas.
Dom Elliott y Soléne Maître presentaron la próxima API de Play Integrity. Permite determinar si el servicio de backend está interactuando con el objeto binario genuino que Google Play instaló en un dispositivo Android genuino para ayudarte a evitar trampas, manipulaciones, fraudes, robos, usos no autorizados y mucho más.
Eso fue todo por hoy respecto de la segunda parte de las novedades de Android Developer Summit vinculadas a Jetpack Compose, Material You, MAD Skills, Android TV, Android Auto y Automotive, WearOS, desarrollo de juegos y Google Play. Te esperamos pronto para ofrecerte más novedades del universo de desarrolladores de Android.