En este documento, se ofrece una vista detallada de las fases típicas de desarrollo y prueba que pueden ayudarte a crear un plan de preparación bien alineado con el cronograma de lanzamiento de la plataforma y garantizar una experiencia excelente para tus usuarios en Android 13.
Con cada actualización de Android, presentamos funciones nuevas y cambios de comportamiento para que Android sea más útil y seguro, y tenga un mejor rendimiento. En muchos casos, tu app funcionará exactamente como se espera de inmediato, mientras que, en otros, es posible que debas actualizarla para adaptarla a los cambios de la plataforma.
Dado que los usuarios pueden comenzar a recibir la plataforma nueva en cuanto se actualiza el código fuente en el Proyecto de código abierto de Android (AOSP), es importante que las apps estén listas, que funcionen como se espera y que, idealmente, usen las APIs y las funciones nuevas para aprovecharla al máximo.
Una migración típica tiene dos fases, que pueden ser simultáneas:
- Garantizar la compatibilidad de las apps (con la versión final de Android 13)
- Orientar las nuevas funciones y las APIs de la plataforma (en cuanto sea posible después de la actualización final)
Asegúrate de brindar compatibilidad con Android 13
Es importante que pruebes las funciones de tu app existente con Android 13 para garantizar una excelente experiencia para los usuarios que actualicen su sistema operativo a la versión más reciente de Android. Algunos cambios en la plataforma pueden afectar el comportamiento de tu app, por lo que es importante realizar pruebas iniciales y exhaustivas y, luego, los ajustes necesarios.
Por lo general, puedes ajustar tu app y publicar una actualización sin necesidad de cambiar la targetSdkVersion
de la app. De manera similar, no deberías necesitar usar APIs nuevas ni cambiar la compileSdkVersion
de la app, aunque esto puede depender de cómo se compila tu app y de las funciones de la plataforma que usa.
Antes de comenzar las pruebas, asegúrate de familiarizarte con los cambios de comportamiento para todas las apps. Estos podrían afectar a tu app, incluso si no cambias su targetSdkVersion
.
Escribe en la memoria flash de tu dispositivo una imagen del sistema Android 13 o descarga una imagen del sistema de Android Emulator.
Revisa los cambios de comportamiento del sistema para identificar las áreas en las que tu app podría verse afectada.
Instala tu app en el dispositivo o emulador y ejecuta pruebas. Concéntrate en los cambios de comportamiento del sistema y trabaja en todos los flujos de la app.
Solo realiza los cambios de código necesarios para adaptarte a los cambios de comportamiento o resolver problemas. Vuelve a compilar con el mismo nivel de API al que se orientó tu app originalmente, sin necesidad de orientarla a Android 13.
Firma, carga y publica tu APK o Android App Bundle actualizado.
Cómo realizar pruebas de compatibilidad
En general, las pruebas de compatibilidad con Android 13 son similares a las pruebas comunes de apps. Este es un buen momento para revisar los lineamientos de calidad de la app principal y las prácticas recomendadas para pruebas.
A fin de realizar la prueba, instala tu app actual publicada en un dispositivo que ejecute Android 13 y revisa todos los flujos y funciones mientras buscas problemas. Para ayudarte a enfocar tus pruebas, revisa los cambios de comportamiento para todas las apps que se introdujeron en Android 13 y que pueden afectar el funcionamiento de la app o hacer que esta falle.
Además, asegúrate de revisar y probar los usos de interfaces restringidas que no pertenecen al SDK. Debes reemplazar cualquier interfaz restringida que use tu app por un SDK público o equivalente del NDK. Mantente alerta a las advertencias de logcat en las que se destacan estos accesos y usa el método detectNonSdkApiUsage()
de StrictMode
para detectarlos de manera programática.
Por último, asegúrate de probar por completo las bibliotecas y los SDK de tu app para confirmar que funcionen como se espera en Android 13 y sigue las prácticas recomendadas de privacidad, rendimiento, UX, manejo de datos y permisos. Si encuentras un problema, prueba actualizar a la versión más reciente del SDK o comunícate con el desarrollador para obtener ayuda.
Te recomendamos que, cuando hayas terminado la prueba y hayas hecho las actualizaciones necesarias, publiques la app compatible de inmediato. Esto permite que los usuarios prueben la app antes de comenzar y ayuda a garantizarles una transición sin inconvenientes mientras actualizan la versión a Android 13.
Cómo actualizar la orientación y la compilación de la app con nuevas API
Una vez que hayas publicado una versión compatible de tu app, el siguiente paso es agregar compatibilidad total con Android 13 mediante la actualización de su targetSdkVersion
y aprovechando las nuevas APIs y capacidades de Android 13.
Puedes realizar estas actualizaciones en cuanto esté todo listo. Ten en cuenta los requisitos de Google Play para orientar a la plataforma nueva.
Cuando planifiques la compatibilidad total con Android 13, revisa los cambios de comportamiento que afectan a las apps orientadas a Android 13. Estos cambios de comportamiento orientados pueden causar problemas funcionales que, luego, necesitarás solucionar. En algunos casos, estos cambios requieren un desarrollo significativo, por lo que te recomendamos aprender sobre ellos y abordarlos lo antes posible. Para ayudar a identificar los cambios de comportamiento específicos que afectan a tu app, usa los botones de compatibilidad para probar la app con los cambios seleccionados habilitados.
En los siguientes pasos, se describe cómo brindar compatibilidad total con Android 13.
Instala la versión más reciente de la vista previa de Android Studio para compilar con Android 13. Asegúrate de contar con un dispositivo o emulador que ejecute Android 13.
Actualiza tu targetSdkVersion
y otras configuraciones de compilación.
Revisa los cambios de comportamiento que se aplican a las apps orientadas a Android 13. Identifica las áreas en las que tu app podría verse afectada y planifica la manera de volverlas compatibles
Haz los cambios de código y arquitectura necesarios para respaldar los cambios de privacidad de los usuarios de Android 13.
Aprovecha las API de Android 13 para incorporar funciones y capacidades nuevas a tus apps. Vuelve a compilar para Android 13.
Haz pruebas en un dispositivo o emulador de Android 13. Enfócate en las áreas en las que los cambios de comportamiento podrían afectar a tu app. Prueba la funcionalidad que usa API nuevas. Proporciona comentarios sobre la plataforma y la API. Notifica cualquier problema con la plataforma, la API o el SDK de terceros.
Una vez que las APIs de Android 13 sean las definitivas, actualiza la targetSdkVersion
y otras configuraciones de compilación nuevamente, haz las actualizaciones adicionales y prueba la app.
Firma, carga y publica tu APK o Android App Bundle actualizado.
Cómo obtener el SDK, cambiar la orientación y compilar con nuevas API
Para comenzar a probar la compatibilidad total con Android 13, usa la versión preliminar más reciente de Android Studio para descargar el SDK de Android 13 y cualquier otra herramienta necesaria. A continuación, actualiza los elementos targetSdkVersion
y compileSdkVersion
de la app y vuelve a compilarla. Para obtener más información, consulta la Guía de configuración del SDK.
Prueba tu app para Android 13
Después de compilar la app y de instalarla en un dispositivo con Android 13, comienza a realizar pruebas para asegurarte de que funcione correctamente cuando se oriente a Android 13. Algunos cambios de comportamiento se aplican solo cuando la app se orienta a la nueva plataforma, por lo que te convendrá revisar esos cambios antes de comenzar.
Al igual que con las pruebas de compatibilidad básicas, revisa todos los flujos y funciones en busca de problemas. Concéntrate en probar los cambios de comportamiento de las apps orientadas a Android 13. También es un buen momento para verificar que tu app cumpla con los lineamientos de calidad básicos de apps y las prácticas recomendadas para pruebas.
Asegúrate de revisar y probar los usos de las interfaces restringidas que no pertenezcan al SDK que se puedan aplicar. Mantente alerta a las advertencias de logcat en las que se destacan estos accesos y usa el método detectNonSdkApiUsage()
de StrictMode para detectarlos de manera programática.
Por último, asegúrate de probar por completo las bibliotecas y los SDK de tu app para confirmar que funcionen como se espera en Android 13 y sigue las prácticas recomendadas de privacidad, rendimiento, UX, manejo de datos y permisos. Si encuentras un problema, prueba actualizar a la versión más reciente del SDK o comunícate con el desarrollador para obtener ayuda.
Prueba la compatibilidad con apps
Android 13 incluye botones de compatibilidad que facilitan probar la app con cambios de comportamiento orientados. Si tienes una app depurable, los botones de activación y desactivación te permiten hacer lo siguiente:
- Probar los cambios orientados sin cambiar realmente la targetSdkVersion de la app. Puedes usar los botones de activación y desactivación para forzar cambios de comportamiento orientados específicos a fin de evaluar el impacto en tu app existente.
- Enfocar tus pruebas solo a cambios específicos. En lugar de tener que abordar todos los cambios orientados a la vez, los botones de activación y desactivación te permiten inhabilitar todos los cambios orientados, excepto los que deseas probar.
- Administrar los cambios que se pueden activar y desactivar mediante adb. Puedes usar comandos adb para habilitar o inhabilitar los cambios que se pueden activar o desactivar en tu entorno de prueba automatizado.
- Depurar más rápido con los ID de cambio estándar. Cada cambio que se puede activar y desactivar tiene un ID y un nombre únicos que puedes usar para depurar rápidamente la causa raíz en el resultado del registro.
Mientras te preparas para cambiar la orientación de tu app o durante el desarrollo activo para la compatibilidad con Android 13, los botones de activación pueden ayudarte. Para obtener más información, consulta Cambios en el marco de compatibilidad (Android 13).