AppReviewX Iniciar sesión

Checklist de pruebas de permisos en Android

Conceder, denegar, revocar y volver a pedir: las secuencias que probar para cada permiso que use tu app.

En esta guía

Cada permiso que pide tu app tiene más estados que "permitido" y "denegado". El usuario puede permitir solo una vez, permitir solo mientras usa la app, denegar, denegar dos veces, revocarlo después en ajustes, o dejar que el sistema lo reinicie tras mucho tiempo sin usar la app. Cada estado necesita una pantalla sensata. La mayoría de los fallos de permisos son callejones sin salida: un botón que no hace nada, una pantalla en blanco, una petición que nunca vuelve a aparecer.

Primero, lista todos los permisos que usa tu app (cámara, ubicación, notificaciones, contactos, micrófono, almacenamiento o multimedia, etc.). Ejecuta las secuencias siguientes para cada uno.

Las secuencias

A. Primera petición. 1. Usa la función por primera vez. Esperado: aparece la petición del sistema en el momento en que la función la necesita, precedida de un motivo breve si el propósito no es obvio. 2. Permite. Esperado: la función funciona al instante, sin reiniciar.

B. Denegar. 3. Instalación limpia, deniega. Esperado: la app explica qué falta y ofrece una salida, no una pantalla en blanco ni un fallo. 4. Activa la función de nuevo tras una denegación. Esperado: la app puede volver a pedirlo o explicar por qué, sin insistir. 5. Deniega repetidamente hasta que el sistema deje de mostrar la petición. Esperado: la app lleva al usuario a los ajustes de la app con un mensaje claro y un botón.

C. Concesiones parciales. (Donde el sistema las ofrezca.) 6. Elige ubicación aproximada en vez de precisa, o "solo mientras se usa". Esperado: la función funciona en la medida de lo posible, o dice qué necesita. 7. Elige "permitir una vez", sal de la app y vuelve más tarde. Esperado: la app vuelve a pedirlo en vez de fallar en silencio.

D. Revocar mientras la app está en marcha. 8. Revoca el permiso en ajustes y vuelve a la app. Esperado: sin fallos; la app lo detecta y lo gestiona. Android puede reiniciar el proceso de la app al revocar un permiso, así que comprueba también la restauración del estado. 9. Revoca mientras una función está activa, como una grabación o la ubicación en directo. Esperado: una parada limpia.

E. Otros caminos. 10. Concede en ajustes tras haber denegado, y vuelve. Esperado: la función ya funciona. 11. Notificaciones: deniega, y actívalas más tarde. Esperado: la app no asume que están activas. 12. Reinicio de permisos sin uso: si el dispositivo lo ofrece, comprueba que volver tras una pausa larga no rompe la app. 13. Elimina los permisos que nunca usas y asegúrate de que los permisos declarados coinciden con lo que hace la app. 14. Revisa un perfil de trabajo o restringido si lo soportas.

Comandos útiles de adb

Concede o revoca desde un ordenador para acelerar pruebas repetidas:

adb shell pm revoke <tu.nombre.de.paquete> android.permission.CAMERA
adb shell pm grant <tu.nombre.de.paquete> android.permission.CAMERA

Cambia el nombre del permiso según necesites. No todos los permisos se pueden cambiar así.

Qué reportar

Dispositivo, versión de Android, permiso, letra de la secuencia y número de paso, lo que mostró la pantalla y una captura.

Límites

Las peticiones y opciones varían según la versión de Android y el fabricante. Las declaraciones en la tienda y los formularios de privacidad son aparte de esta prueba funcional; revisa las normas actuales de la tienda y, para cuestiones legales, pide asesoramiento profesional (esto no es asesoramiento jurídico).

Visión general: Pruebas de apps Android. Relacionado: ahorro de batería y Doze y cierre del proceso.

Empieza gratis en AppReviewX y deja que los testers ejecuten estas secuencias e informen en privado.