Edición n.º 25 de Now in Android
Lanzamiento de Android 11, Jetpack DataStore, cambios en la privacidad, Android GPU Inspector y episodios de podcast
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.
Android 11: ¡Ya llegó!

Después de meses de versiones preliminares y beta, lo logramos: ya lanzamos oficialmente Android 11, cuyo código fuente se implementó en el Proyecto de código abierto de Android (AOSP).
Ya hablé sobre las funciones de esta versión destinadas a usuarios y desarrolladores, pero aquí puedes ver algunos avances y recordatorios:
- Mejoras en la IU, como Conversaciones en el panel de notificaciones, burbujas y animaciones de IME sincronizadas
- Fácil acceso a los controles multimedia y de dispositivos conectados
- Refuerzos en la privacidad, como permisos únicos y de restablecimiento automático, mejoras en el almacenamiento específico y API de refuerzo de identificación biométrica (con adiciones para la biblioteca de datos biométricos de versiones anteriores)
- Mejoras para desarrolladores, como la nueva API de razones de fallas, el control de comportamiento en el panel de Opciones para desarrolladores, la instalación incremental de ADB y más anotaciones de nulabilidad de Kotlin para API de plataforma
También realizamos avances en las actualizaciones del sistema de Google Play (originalmente denominadas “principales”, para quienes, como yo, se confunden con los cambios de nombre) a fin de admitir más módulos y habilitar actualizaciones más frecuentes en la funcionalidad principal del sistema para todo el ecosistema.
Si quieres ver una lista más extensa de las funciones que se incluirán en esta versión, consulta el blog sobre funciones para desarrolladores de Stephanie Saad Cuthbertson, así como el artículo sobre funciones para usuarios de la versión, de Dave Burke.
Jetpack DataStore
Jetpack DataStore es una nueva biblioteca, disponible como alternativa (y mejora) para las preferencias compartidas. Esta nueva biblioteca, que usa corrutinas de Kotlin y Flow para facilitar la lectura y la escritura asíncronas, es lo que usaremos de ahora en adelante. Si bien está en etapa alfa actualmente, explórala para ver cómo hacer la migración en el futuro.
DataStore tiene dos API y enfoques diferentes. Preferences DataStore (al igual que SharedPreferences, a la que reemplazará completamente) usa pares clave-valor para almacenar datos simples. Sin embargo, Preferences DataStore es más potente y sólida que SharedPreferences, ya que administra automáticamente la lectura y la escritura asíncronas (en lugar del enfoque de escritura síncrona de SharedPreferences, por el cual luego debes resolver cómo salir del hilo de IU que quieres obtener).
La segunda API es Proto DataStore, que te permite crear un esquema para almacenamiento de datos de objetos más completo y con seguridad de tipos, respaldado por búferes de protocolo.
Para comenzar, consulta el artículo sobre DataStore que se encuentra a continuación. Luego, prueba el codelab de Preferences y el de Proto para iniciar tu aprendizaje, y descarga la biblioteca.
Te recomendamos almacenar datos con Jetpack DataStore
Artículos y videos
Cómo adaptarse a los recientes cambios en la privacidad de Android
Fred Chung escribió un artículo para ayudar a los desarrolladores a comprender los recientes cambios en la privacidad y adaptarse a ellos. Cada versión incluye varios cambios en esta área, ya que siempre buscamos brindar un mejor control y una mayor transparencia en el acceso a los datos del usuario, y Android 11 no es la excepción. Aunque muchos de estos cambios están delimitados por una marca targetSdk, querrás entenderlos y, luego, migrar tu código. Por lo tanto, te recomendamos que leas este artículo para saber cómo proceder.
Estos son los temas principales:
- Acceso a paquetes: Android 11 limita la visibilidad de los paquetes en el dispositivo. Esto quiere decir que las apps ya no pueden acceder a información sobre otras apps del dispositivo de un usuario. En el artículo, se explica cómo funciona esta opción en la actualidad y se incluye un vínculo a una guía de implementación.
- Permisos de ubicación incrementales: Android 11 requiere que el acceso a la ubicación en primer y segundo plano se solicite de manera incremental (primero en primer plano y luego en segundo plano, lo que dirigirá al usuario a Configuración para otorgar el permiso de ubicación correspondiente).
- Los servicios en primer plano incluyen acceso a la ubicación, el micrófono y la cámara.
- ID que no se pueden restablecer: Este cambio evoluciona de una versión a otra, a medida que desligamos a los desarrolladores de los identificadores de dispositivos que no se pueden restablecer. En Android 11, las llamadas a getIccId() ya no muestran información útil, por lo que debes buscar otro método para obtener los datos que necesitas. (Sugerencia: Usa identificadores que se puedan restablecer). Para comenzar, lee nuestra guía sobre Prácticas recomendadas para identificadores únicos.
Android GPU Inspector
Hace unos meses, anunciamos una nueva herramienta de generación de perfiles que podía usarse para ajustar el rendimiento de los gráficos en 3D. Sin embargo, solo se podía acceder a una versión preliminar inicial, puesto que seguíamos trabajando en ella.
De vuelta en el presente, podemos decir que Android GPU Inspector ya está disponible en etapa “beta abierta” y todos pueden usarla. (Nota: Todavía se encuentra en etapa beta, por lo que el equipo sigue trabajando; sin embargo, estamos listos para que más usuarios la prueben y nos envíen sus comentarios).
Esta herramienta es similar a otras de generación de perfiles que ofrecemos, como el generador de perfiles de CPU de Android Studio y las herramientas systrace y perfetto independientes, pero tiene información específica de las GPU que puede ayudar a los desarrolladores (en especial a quienes escriben juegos y otras apps cuyo rendimiento depende de los gráficos) a ajustar su rendimiento 3D.
Android GPU Inspector depende de la cooperación con los controladores de los dispositivos, por lo que, actualmente, la compatibilidad con dispositivos se limita a Pixel 4 y Pixel 4 XL. Esperamos admitir más dispositivos en el futuro.
Puedes descargar la herramienta aquí y obtener más información en el artículo y el video que se encuentran a continuación.
Beta abierta de Android GPU Inspector
Episodios de podcast
ADB 148: [Constraint|Motion][Layout|Editor]
Junto a Sean McQuillan, hablamos con Nicolas Roard y John Hoford sobre MotionEditor, que se estabilizó recientemente en Android Studio 4.0. Sin embargo, mientras hablábamos sobre esa herramienta, también mencionamos MotionLayout a nivel general, así como ConstraintLayout y otras herramientas de diseño.
ADB 148: [Constraint|Motion][Layout|Editor]
Talking with Apples
Sean McQuillan se unió a Peter-John Welcome en su podcast para hablar sobre Jetpack Compose.
Bien…,
eso es todo por hoy. Obtén información sobre Android 11. Descarga la nueva biblioteca de Jetpack DataStore. Obtén información para adaptarte a los cambios más recientes en la privacidad. Prueba la nueva versión de Android GPU Inspector. Escucha los últimos podcasts de ADB y Talking with Apples. Te esperamos pronto para ofrecerte más novedades desde el universo de desarrolladores de Android.