Guía de prueba de Android 6.0

Android 6.0 te brinda la oportunidad de garantizar que tus apps funcionen con los próximos más reciente de la plataforma. Esta versión incluye una serie de APIs y cambios de comportamiento que pueden afectar tu app, como se describe en el artículo de la API Descripción general y Cambios de comportamiento. En pruebas tu app con esta versión, debes enfocarte en algunos cambios específicos del sistema garantizar que los usuarios tengan una buena experiencia.

En esta guía, se describen qué funciones de Android 6.0 puedes probar y cómo probarlas. Deberías priorizar la prueba de estas funciones específicas, debido a su alto impacto potencial en el comportamiento de la app:

Prueba de permisos

El nuevo modelo de Permisos cambia la forma en que el usuario asigna permisos a tu app. En lugar de otorgar permisos durante el procedimiento de instalación, tu app debe solicitarle al usuario permisos individuales durante el tiempo de ejecución. Para los usuarios, este comportamiento proporciona un control más detallado sobre las actividades de cada aplicación, ya que así como un mejor contexto para comprender por qué la app solicita un permiso específico. Usuarios puede otorgar o revocar los permisos otorgados a una aplicación de manera individual en cualquier momento. Esta función de es más probable que la versión tenga un impacto en el comportamiento de tu app y puede impedir que algunas de tus funciones de la app no funcionen o que funcionen en un estado degradado.

Este cambio afecta a todas las apps que se ejecutan en la plataforma nueva, incluso a aquellas que no están orientadas a la nueva. versión de la plataforma. La plataforma ofrece un comportamiento de compatibilidad limitada para las apps heredadas, pero deberías comenzar a planificar ahora la migración de tu app al nuevo modelo de permisos, con el objetivo publicar una versión actualizada de tu app en el lanzamiento oficial de la plataforma;

Sugerencias para pruebas

Usa las siguientes sugerencias para pruebas como ayuda para planificar y ejecutar las pruebas de tu app con el nuevo el comportamiento de los permisos.

  • Identifica los permisos actuales de tu app y las rutas de acceso de códigos relacionadas.
  • Prueba los flujos del usuario en los datos y servicios protegidos por permisos.
  • Realiza pruebas con varias combinaciones de permisos concedidos o revocados.
  • Usa la herramienta de adb para administrar los permisos desde la línea de comandos:
    • Enumera los permisos y estados por grupo:
      adb shell pm list permissions -d -g
    • Otorga o revoca uno o más permisos con la siguiente sintaxis:
      adb shell pm [grant|revoke] <permission.name> ...
  • Analiza tu app en busca de servicios que usen permisos.

Estrategia de prueba

El cambio en los permisos afecta la estructura y el diseño de tu app, así como lo siguiente: la experiencia del usuario y los flujos que les proporcionas a los usuarios. Debes evaluar el rendimiento permisos de uso y comenzar a planificar los nuevos flujos que deseas ofrecer. El lanzamiento oficial de la plataforma proporciona un comportamiento de compatibilidad, pero debes prever la actualización de tu app y no depender de estos comportamientos.

Identifica los permisos que tu app realmente necesita y usa y, luego, busca los distintos permisos las rutas de acceso que usan los servicios protegidos por permisos. Puedes hacerlo mediante una combinación y pruebas de código en la nueva plataforma. Durante las pruebas, debes enfocarte en habilitar permisos de tiempo de ejecución cambiando targetSdkVersion de la app al nivel de API 23.

Realiza pruebas con varias combinaciones de permisos revocados y agregados, para destacar los flujos de usuarios que dependen de los permisos. Cuando una dependencia no es obvia ni lógica, deberías considerar refactorizar o compartimentar ese flujo para eliminar la dependencia o dejar claro por qué se necesita permiso.

Para obtener más información sobre el comportamiento de los permisos de tiempo de ejecución, las pruebas y las prácticas recomendadas, consulta Desarrollador de Cómo trabajar con permisos del sistema

Prueba de los modos Descanso y App Standby

Las funciones de ahorro de energía de Descanso y App Standby limitan la cantidad de procesamiento en segundo plano que que puede realizar tu app cuando un dispositivo está inactivo o cuando no está en foco. El de acceso que el sistema puede imponer a las apps, como el acceso limitado a la red o ninguno, tareas en segundo plano suspendidas, notificaciones suspendidas, solicitudes de activación ignoradas y alarmas. Para garantizar que tu aplicación se comporte correctamente con estas optimizaciones de ahorro de energía, debes probar tu aplicación para simular estos estados de bajo consumo.

Cómo probar tu app con el modo Descanso

Para probar el modo Descanso con tu app, realiza lo siguiente:

  1. Configurar un dispositivo de hardware o virtual con un dispositivo Android 7.0 (API nivel 24).
  2. Conecta el dispositivo a tu equipo de desarrollo e instala tu app.
  3. Ejecuta tu app y déjala activa.
  4. Simula la activación del modo Descanso en el dispositivo ejecutando los siguientes comandos:
    $ adb shell dumpsys battery unplug
    $ adb shell dumpsys deviceidle step
    $ adb shell dumpsys deviceidle -h
    
  5. Observa el comportamiento de tu app cuando se reactive el dispositivo. Asegúrate de que se recupera de forma correcta cuando el dispositivo sale del modo Descanso.

Prueba de apps con App Standby

Para probar el modo App Standby con tu app, realiza lo siguiente:

  1. Configurar un dispositivo de hardware o virtual con un dispositivo Android 7.0 (API nivel 24).
  2. Conecta el dispositivo a tu equipo de desarrollo e instala tu app.
  3. Ejecuta tu app y déjala activa.
  4. Simula la activación del modo App Standby en la app ejecutando los siguientes comandos:
    $ adb shell am broadcast -a android.os.action.DISCHARGING
    $ adb shell am set-idle <packageName> true
    
  5. Simula la activación de tu app con el siguiente comando:
    $ adb shell am set-idle <packageName> false
  6. Observa el comportamiento de tu app al reactivarse. Asegúrate de que se recupere correctamente del modo en espera. En particular, debes verificar si las notificaciones en segundo plano y las notificaciones que los trabajos sigan funcionando como se espera.

Auto Backup for Apps e identificadores específicos del dispositivo

Si tu app conserva algún identificador específico del dispositivo, como Google el ID de registro de Cloud Messaging en el almacenamiento interno, asegúrate de seguir las prácticas recomendadas para excluir ubicación de la copia de seguridad automática, tal como se describe en Copia de seguridad del usuario Datos con copia de seguridad automática