Publicado por Diana Wong, Gerente de Producto, Android
Esta publicación de blog es parte de una serie semanal para # 11WeeksOfAndroid . Por cada # 11WeeksOfAndroid nos sumergimos en un área clave para que no te pierdas nada. Esta semana destacamos la compatibilidad con Android 11; Aquí hay un vistazo a lo que debe saber.
Semana de compatibilidad de Android 11
Esta semana de Android de 11 semanas, destacamos la compatibilidad de Android 11, un tema importante para todos los desarrolladores. Para Android, el término compatibilidad de la aplicación significa que la aplicación funciona correctamente en una versión específica de Android, generalmente la última versión.
Aquí compartimos recursos para ayudarlo con las pruebas de compatibilidad y puede seguir a los desarrolladores de Android en Twitter y Youtube para recopilar contenido y materiales útiles en esta área durante toda la semana.
Simplificando la compatibilidad de aplicaciones en Android 11
Con cada versión, estamos trabajando para reducir el trabajo que necesita hacer para preparar sus aplicaciones. En Android 11, agregamos nuevos procesos, herramientas para desarrolladores y lanzamos hitos para minimizar el impacto de las actualizaciones de la plataforma y facilitar la compatibilidad de las aplicaciones.
- Minimizando el impacto de los cambios de comportamiento : estamos haciendo un esfuerzo consciente para minimizar los cambios en la plataforma que podrían afectar las aplicaciones al activarlas, cuando sea posible, hasta que establezca targetSdkVersion en Android 11 en tu aplicación. Si está distribuyendo a través de Google Play, tendrá más de un año para aceptar estos cambios.
- Pruebas y depuración más simples – Para ayudarlo a probar la compatibilidad, hemos realizado muchos de los cambios finales que se pueden activar, lo que significa que puede forzar la activación o desactivación de los cambios individualmente desde las opciones de desarrollador o adb. Con este cambio, ya no necesita editar targetSdkVersion o volver a compilar su aplicación para pruebas básicas. También hemos simplificado el uso de Android Studio para realizar pruebas automáticas.
- Restricciones en las interfaces que no son SDK – como parte de nuestro esfuerzo continuo para mover gradualmente a los desarrolladores de las API que no son SDK, hemos actualizado las listas de interfaces limitadas que no son SDK y, como siempre, sus comentarios y solicitudes de API equivalentes El público es bienvenido.
- Dynamic Resource Loader – Como parte de la migración desde interfaces que no son SDK, los desarrolladores nos pidieron una API pública para cargar dinámicamente recursos y recursos en tiempo de ejecución. ¡Ahora hemos agregado un marco de Resource Loader en Android 11 y gracias a los desarrolladores que nos brindaron esta contribución!
Obtenga más información sobre estos temas durante la semana. Para comenzar, siga leyendo para obtener más información sobre cómo estamos simplificando las pruebas y la depuración de su aplicación en Android 11.
Prueba en Android 11
Probar su aplicación para una nueva versión de Android puede ser una tarea exigente, especialmente cuando su aplicación puede verse afectada por múltiples cambios en la plataforma. Pueden surgir muchas preguntas:
- ¿Cómo determina qué áreas de su aplicación podrían verse afectadas?
- Debe probar cambiando
targetSDKVersion,
y ¿cuál es la forma más fácil de hacerlo? - Después de comenzar la prueba, ¿cómo aislar los problemas que causan problemas?
- Durante el desarrollo y las pruebas con la última versión de Android, ¿cómo puede verificar que su aplicación continúe ofreciendo una experiencia uniforme en otros dispositivos con diferentes factores de forma y niveles API más bajos?
Hemos recibido muchos comentarios excelentes de nuestra comunidad de desarrolladores sobre estas y otras preguntas. En Android 11, agregamos nuevas herramientas a la plataforma y nuevas funciones a Android Studio que pueden simplificar el proceso de prueba.
Nuevas herramientas para probar cambios en la plataforma
Al igual que las versiones anteriores, Android 11 incluye algunos cambios en la plataforma Android que podrían afectar sus aplicaciones. Si bien estos cambios son críticos para mejorar la plataforma, intentamos minimizar los cambios inmediatos en sus aplicaciones colocando tantos cambios como sea posible detrás del último objetivo de la plataforma SDKVersion
. En Android 11, también hemos agregado muchos de estos cambios a la plataforma a un nuevo marco de compatibilidad.
¿Cuál es el marco de compatibilidad?
Cuando un cambio es parte del marco de compatibilidad, puede acceder a nuevas herramientas de desarrollo que lo ayudan a probar y depurar su aplicación contra ese cambio.
Por ejemplo, los cambios que forman parte del marco de compatibilidad se pueden activar, por lo tanto, es posible forzar la activación o desactivación de los cambios individualmente, desde las opciones de desarrollo de un dispositivo o usando ADB (Android Debug Bridge). La plataforma Android adapta automáticamente la lógica interna de la API, por lo que no es necesario modificar el destino SDKVersion objetivo
o volver a compilar la aplicación para realizar pruebas básicas. Además, puede aislar los cambios individuales entre sí para reducir el tiempo que lleva detectar y depurar problemas en su aplicación.
Elección de un cambio para probar
Antes de comenzar a habilitar o deshabilitar los cambios, debe leer las listas de cambios de comportamiento para determinar qué cambios pueden afectar su aplicación. Los cambios que forman parte del marco de compatibilidad tienen un ID de cambio correspondiente y Cambiar nombre
enumerados antes de la descripción del cambio.
En general, le recomendamos que comience a probar con cambios de comportamiento que afectan a todas las aplicaciones porque estos cambios pueden afectar su aplicación independientemente de targetSDKVersion
. Sin embargo, echemos un vistazo a un cambio administrado por targetSDKVersion
para que pueda ver cómo probar estos cambios sin recompilar su aplicación con un SDK de destino diferente.
Eche un vistazo al cambio de acceso a la ubicación de fondo. Este cambio afecta a las aplicaciones que siempre requieren acceso a la ubicación en segundo plano. Si su aplicación se ve afectada por este cambio, podría ser un gran candidato para comenzar a probar. El nombre del cambio es BACKGROUND_RATIONALE_CHANGE_ID
y el ID del cambio es 147316723
. Utilizará esta información para habilitar este cambio antes de probar la aplicación.
Aísle el cambio
Después de decidir qué cambio desea verificar, puede activar o desactivar el cambio utilizando las opciones de desarrollador. Para acceder a las opciones de desarrollador, abra la aplicación Configuración del dispositivo y vaya a Sistema> Avanzado> Opciones de desarrollador> Cambios de compatibilidad de la aplicación .
Cambios conmutables de la plataforma en las opciones de desarrollador con la modificación del acceso a la posición de fondo habilitada
En este caso, BACKGROUND_RATIONALE_CHANGE_ID
es la única modificación habilitada para minimizar El alcance de las posibles causas de cualquier problema que pueda encontrar su aplicación.
También puede usar logcat o ADB para identificar qué cambios están habilitados y usar ADB para habilitar o deshabilitar los cambios. Tenga en cuenta que los cambios solo se pueden habilitar o deshabilitar cuando se usa una aplicación de depuración.
Pruebe y depure su aplicación
Después de habilitar un cambio, puede probar y depurar su aplicación utilizando flujos de trabajo de prueba típicos. Si tiene un problema, verifique los registros para determinar la causa del problema. Si no está claro si el problema es causado por la modificación de la plataforma habilitada, intente deshabilitar esa modificación y luego vuelva a probar esa área de la aplicación.
Obtenga más información
Vea el video de esta semana sobre los cambios en la plataforma de prueba en Android 11 para ver otro ejemplo y lea la documentación en developer.android.com.
Nuevas herramientas en Android Studio para probar la compatibilidad de aplicaciones
Además de las pruebas manuales en la nueva plataforma, también hemos simplificado el uso de Android Studio para ejecutar pruebas automáticas en el último sistema operativo.
A partir de Android Studio 4.2, ahora es posible realizar pruebas de instrumentación en múltiples dispositivos físicos o virtuales en paralelo. Durante la ejecución de la prueba, la opción para seleccionar Múltiples dispositivos en el menú desplegable de los dispositivos de destino ahora está disponible.
Esta característica está diseñada para ayudarlo a detectar problemas lo antes posible en su ciclo de desarrollo y le permite comparar las diferencias entre diferentes compilaciones de Android. Los resultados de estas pruebas se pueden examinar utilizando una nueva matriz de prueba en Ver> Ventanas de herramientas> Ejecutar .
La nueva matriz de prueba le permite filtrar los resultados de la prueba por estado, dispositivo y nivel de API.
Obtenga más información
Vea el video de esta semana de las pruebas de compatibilidad de aplicaciones con Android Studio y lea la documentación en developer.android .com.
Próximos pasos
Te invitamos a probar estas nuevas herramientas y enviarnos comentarios sobre cómo funcionan para ti. Esperamos que estas herramientas te ayuden a probar tu aplicación de Android 11.
Además, el equipo de ingeniería de Android organizará un AMA Reddit el jueves r / androiddev el jueves 9 de julio a las 12:00 PST, para responder sus preguntas técnicas sobre Android 11. Consulte esta publicación para obtener más detalles y enviar sus preguntas.