Guía de permisos

Checklist de permisos iOS y Android

Los permisos son configuración, UX y promesa de privacidad.

LaunchLint Academy

17 min de lecturaRevisado editorialmente por el equipo de LaunchLint
Revisión de permisos de cámara, ubicación, fotos y micrófono con propósito
Los permisos combinan comportamiento, configuración y promesa de privacidad. Pide solo el acceso necesario y explica su uso en contexto.
TL;DR

La respuesta breve

  • Los permisos combinan comportamiento, configuración y promesa de privacidad. Pide solo el acceso necesario y explica su uso en contexto.
  • Revisa purpose strings, manifest, runtime, denegación y fallback como un sistema.
  • Esta checklist no se completa una sola vez. Ejecútala antes del primer upload, después de cambios relevantes en dependencias o configuración y justo antes de publicar. Desarrollo, producto y quien controla la consola deben revisar el mismo build. Las señales estáticas son reproducibles, pero no demuestran el runtime ni las respuestas del backend. Combínalas con pruebas del artefacto firmado, declaraciones oficiales y una decisión documentada.

1. Inventariar permisos

Relaciona cada declaración con función, SDK y finalidad.

Trata inventariar permisos como una propiedad verificable del candidato exacto. Relaciona la decisión con su archivo, campo de la tienda o prueba reproducible. Registra por separado lo esperado y lo observado, asigna responsable y detén la publicación mientras quede una contradicción de seguridad o review.

Pruebas para aceptar la release

  • Estado de producción de inventariar permisos identificado
  • Archivo o campo responsable enlazado
  • Prueba repetida en un dispositivo limpio
  • Diferencias iOS y Android documentadas
  • Cada duda tiene responsable y fecha
  • La evidencia no contiene secretos ni datos personales

2. Minimizar acceso

Usa pickers, intents, ubicación aproximada o entrada manual cuando basten.

Trata minimizar acceso como una propiedad verificable del candidato exacto. Relaciona la decisión con su archivo, campo de la tienda o prueba reproducible. Registra por separado lo esperado y lo observado, asigna responsable y detén la publicación mientras quede una contradicción de seguridad o review.

Pruebas para aceptar la release

  • Estado de producción de minimizar acceso identificado
  • Archivo o campo responsable enlazado
  • Prueba repetida en un dispositivo limpio
  • Diferencias iOS y Android documentadas
  • Cada duda tiene responsable y fecha
  • La evidencia no contiene secretos ni datos personales

3. Escribir textos concretos

Explica qué función necesita acceso y qué ocurre después.

Trata escribir textos concretos como una propiedad verificable del candidato exacto. Relaciona la decisión con su archivo, campo de la tienda o prueba reproducible. Registra por separado lo esperado y lo observado, asigna responsable y detén la publicación mientras quede una contradicción de seguridad o review.

Pruebas para aceptar la release

  • Estado de producción de escribir textos concretos identificado
  • Archivo o campo responsable enlazado
  • Prueba repetida en un dispositivo limpio
  • Diferencias iOS y Android documentadas
  • Cada duda tiene responsable y fecha
  • La evidencia no contiene secretos ni datos personales

4. Pedir en contexto

Solicita el permiso cuando el usuario inicia la función.

Trata pedir en contexto como una propiedad verificable del candidato exacto. Relaciona la decisión con su archivo, campo de la tienda o prueba reproducible. Registra por separado lo esperado y lo observado, asigna responsable y detén la publicación mientras quede una contradicción de seguridad o review.

Pruebas para aceptar la release

  • Estado de producción de pedir en contexto identificado
  • Archivo o campo responsable enlazado
  • Prueba repetida en un dispositivo limpio
  • Diferencias iOS y Android documentadas
  • Cada duda tiene responsable y fecha
  • La evidencia no contiene secretos ni datos personales

5. Respetar la denegación

Evita crashes y ofrece fallback y ajustes cuando sean útiles.

Trata respetar la denegación como una propiedad verificable del candidato exacto. Relaciona la decisión con su archivo, campo de la tienda o prueba reproducible. Registra por separado lo esperado y lo observado, asigna responsable y detén la publicación mientras quede una contradicción de seguridad o review.

Pruebas para aceptar la release

  • Estado de producción de respetar la denegación identificado
  • Archivo o campo responsable enlazado
  • Prueba repetida en un dispositivo limpio
  • Diferencias iOS y Android documentadas
  • Cada duda tiene responsable y fecha
  • La evidencia no contiene secretos ni datos personales

6. Comparar configuración

Plugins y archivos nativos pueden añadir permisos o sobrescribir textos.

Trata comparar configuración como una propiedad verificable del candidato exacto. Relaciona la decisión con su archivo, campo de la tienda o prueba reproducible. Registra por separado lo esperado y lo observado, asigna responsable y detén la publicación mientras quede una contradicción de seguridad o review.

Pruebas para aceptar la release

  • Estado de producción de comparar configuración identificado
  • Archivo o campo responsable enlazado
  • Prueba repetida en un dispositivo limpio
  • Diferencias iOS y Android documentadas
  • Cada duda tiene responsable y fecha
  • La evidencia no contiene secretos ni datos personales

7. Sincronizar privacidad

Permisos, datos, política y formularios deben coincidir.

Trata sincronizar privacidad como una propiedad verificable del candidato exacto. Relaciona la decisión con su archivo, campo de la tienda o prueba reproducible. Registra por separado lo esperado y lo observado, asigna responsable y detén la publicación mientras quede una contradicción de seguridad o review.

Pruebas para aceptar la release

  • Estado de producción de sincronizar privacidad identificado
  • Archivo o campo responsable enlazado
  • Prueba repetida en un dispositivo limpio
  • Diferencias iOS y Android documentadas
  • Cada duda tiene responsable y fecha
  • La evidencia no contiene secretos ni datos personales

8. Probar la release

Cubre primera petición, denegación, estado permanente, selección limitada y upgrades.

Trata probar la release como una propiedad verificable del candidato exacto. Relaciona la decisión con su archivo, campo de la tienda o prueba reproducible. Registra por separado lo esperado y lo observado, asigna responsable y detén la publicación mientras quede una contradicción de seguridad o review.

Pruebas para aceptar la release

  • Estado de producción de probar la release identificado
  • Archivo o campo responsable enlazado
  • Prueba repetida en un dispositivo limpio
  • Diferencias iOS y Android documentadas
  • Cada duda tiene responsable y fecha
  • La evidencia no contiene secretos ni datos personales

Preguntas frecuentes

¿Hace falta purpose string?

Los recursos protegidos necesitan la descripción correspondiente.

¿Pido todo en onboarding?

No. Pide cada acceso en contexto.

¿Un plugin añade permisos?

Sí. Revisa la configuración nativa final.

¿LaunchLint prueba el momento exacto?

No completamente; requiere runtime.

Fuentes oficiales

Este artículo se basa en las siguientes fuentes primarias oficiales. Las reglas pueden cambiar; comprueba siempre la versión vigente antes de enviar.