Permisos de Acceso y Privacidad — una de las áreas más importantes y de rápido cambio en el desarrollo móvil. Según Apple Developer Guidelines (2025), desde la implementación de ATT (App Tracking Transparency) en 2021, la tasa de consentimiento de los usuarios para el seguimiento es de aproximadamente el 20%. Analicemos los modelos de permisos en iOS y Android, los requisitos de privacidad (ATT, Privacy Manifest, GDPR) y consejos prácticos para su implementación.
Puntos Clave
Modelos de Permisos en iOS y Android comparten una idea común: el usuario debe dar su consentimiento para acceder a datos sensibles (cámara, micrófono, geolocalización, contactos). Sin embargo, la implementación difiere significativamente. Android solicita permisos en el momento de uso (runtime), iOS requiere describir el propósito en Info.plist y solicita en el primer acceso. La implementación correcta de los permisos de acceso en una aplicación móvil es la base de la seguridad y la confianza.
Antes de Android 6.0 (API 23), todos los permisos se solicitaban en la instalación — el usuario aceptaba todos o no instalaba la aplicación. Con Android 6.0 aparecieron los Runtime Permissions: la aplicación solicita permiso en el momento de la primera necesidad y el usuario puede denegarlo. iOS utiliza un enfoque similar desde iOS 8.0. Conocer la evolución de los permisos de acceso en el desarrollo móvil ayuda a diseñar un UX intuitivo.
En IT Sectr seguimos el principio de «permisos mínimos»: solicitamos solo lo que realmente se necesita y solo en el momento necesario. Esto aumenta la confianza del usuario: según Google (2025), las aplicaciones que solicitan más de 5 permisos en el primer inicio tienen una tasa de conversión en registro un 30% menor. Este modelo de permisos de acceso en aplicaciones móviles se confirma con nuestra práctica.
| Parámetro | iOS | Android |
|---|---|---|
| Mecanismo | Solicitud en el primer acceso al recurso | Solicitud en el primer acceso (Runtime Permission) |
| Descripción del propósito | Info.plist (Privacy — Usage Description) | shouldShowRequestPermissionRationale (opcional) |
| Revocación de permisos | Configuración → Privacidad | Configuración → Aplicaciones → Permisos |
| Agrupación | No (cada permiso por separado) | Permission Groups (por ejemplo, STORAGE) |
| ID publicitario | IDFA (requiere ATT) | GAID / AAID (Google Play Services) |
| Privacidad | Privacy Manifest (desde 2024) | Data Safety Section (Google Play) |
Tabla 4. Comparación de modelos de permisos iOS y Android. La principal diferencia: iOS requiere una descripción textual explícita del propósito de cada permiso en Info.plist. Android ofrece shouldShowRequestPermissionRationale para explicar al usuario por qué se necesita el permiso. Comprender las diferencias en los derechos de acceso entre plataformas ayuda a elegir el modelo correcto.
Normal Permissions — permisos que no representan una amenaza para la privacidad del usuario. Se conceden automáticamente durante la instalación: INTERNET, ACCESS_NETWORK_STATE, VIBRATE, BLUETOOTH. El desarrollador no necesita solicitarlos en el código. Esta clasificación de permisos de acceso corresponde al nivel de riesgo para la privacidad.
Dangerous Permissions — permisos que requieren acceso a datos personales: CAMERA, RECORD_AUDIO, ACCESS_FINE_LOCATION, READ_CONTACTS, READ_CALENDAR, READ_EXTERNAL_STORAGE. Requieren una solicitud en tiempo de ejecución. Permission Group — grupo de permisos relacionados: si el usuario permitió CAMERA, el permiso para grabar video (RECORD_AUDIO? no, es un grupo separado) — no, CAMERA y RECORD_AUDIO están en grupos diferentes.
Runtime Permission — llamar a ActivityCompat.requestPermissions() en Android o solicitar a través de CLLocationManager.requestWhenInUseAuthorization() en iOS. El usuario puede responder: Grant (conceder), Deny (denegar) o «No preguntar de nuevo» (en Android después de dos denegaciones). La configuración de permisos de acceso en una aplicación móvil requiere tener en cuenta el comportamiento del usuario.
Runtime Permission en Android requiere verificar el estado actual antes de cada uso. El método shouldShowRequestPermissionRationale() devuelve true si el usuario ya denegó — esto es una señal para mostrar un diálogo con explicación. En iOS, el equivalente es la verificación de estado: .notDetermined, .denied, .authorized, .restricted. La privacidad de la aplicación móvil requiere un monitoreo constante del estado de los permisos.
// Kotlin — solicitud de permiso de cámara en tiempo de ejecución
class CameraActivity : AppCompatActivity() {
companion object {
private const val CAMERA_PERMISSION_CODE = 100
}
private fun requestCameraPermission() {
when {
ContextCompat.checkSelfPermission(
this, Manifest.permission.CAMERA
) == PackageManager.PERMISSION_GRANTED -> {
openCamera()
}
shouldShowRequestPermissionRationale(Manifest.permission.CAMERA) -> {
showRationaleDialog("Se necesita acceso a la cámara para escanear códigos QR")
}
else -> {
requestPermissions(
arrayOf(Manifest.permission.CAMERA),
CAMERA_PERMISSION_CODE
)
}
}
}
override fun onRequestPermissionsResult(
requestCode: Int,
permissions: Array<String>,
grantResults: IntArray
) {
if (requestCode == CAMERA_PERMISSION_CODE &&
grantResults.firstOrNull() == PackageManager.PERMISSION_GRANTED
) {
openCamera()
}
}
}
Este código muestra el patrón correcto: verificar estado → mostrar explicación (si es necesario) → solicitar permiso → manejar resultado. shouldShowRequestPermissionRationale es un método importante: si el usuario ya denegó, muestre un diálogo explicando por qué se necesita el permiso. Sin esto, el usuario puede denegar el acceso permanentemente.
ATT (App Tracking Transparency) — un framework de Apple (iOS 14.5+) que requiere el consentimiento explícito del usuario para el seguimiento. Sin consentimiento, IDFA (Identifier for Advertisers) devuelve ceros. Según Flurry (2025), la tasa de aceptación de ATT es del 15–25% según la región y el tipo de aplicación. La gestión de permisos de acceso en una aplicación móvil comienza con la elección del framework adecuado.
Privacy Manifest — un archivo obligatorio (desde 2024 para aplicaciones nuevas, desde 2025 para actualizaciones) en el que el desarrollador declara qué tipos de datos recopila la aplicación y con qué fines. Apple verifica que el Privacy Manifest coincida con el comportamiento real de la aplicación durante la revisión. La privacidad en una aplicación móvil debe estar documentada.
ATT requiere agregar la clave Info.plist NSUserTrackingUsageDescription con una descripción de por qué se necesita el seguimiento, y llamar a ATTrackingManager.requestTrackingAuthorization(). Importante: ¿debe solicitar ATT antes de mostrar el consentimiento GDPR? No, ATT es una solicitud separada de Apple. En la UE, primero muestre el banner de GDPR, luego ATT. Los permisos de acceso en una aplicación móvil en iOS requieren una configuración obligatoria de ATT.
IDFA se utiliza para la atribución publicitaria y la personalización. En Android, el equivalente es GAID (Google Advertising ID) o AAID (Amazon Advertising ID). Desde Android 13+, existe un permiso de tiempo de ejecución para acceder a GAID (com.google.android.gms.permission.AD_ID). La privacidad de la aplicación móvil requiere control sobre los identificadores publicitarios.
GDPR (Reglamento General de Protección de Datos) — reglamento de la UE vigente desde mayo de 2018. Exige: consentimiento explícito para la recopilación de datos personales, derecho a gestionar los permisos de acceso, derecho a eliminar datos (derecho al olvido), notificación de violaciones de datos y designación de un DPO (Delegado de Protección de Datos) para grandes empresas. El reglamento también define un modelo transparente de permisos de acceso en aplicaciones móviles.
Para aplicaciones móviles, GDPR significa: mostrar un banner de consentimiento en el primer inicio (con una descripción clara de qué datos se recopilan y con qué fines), la posibilidad de rechazar permisos no esenciales y un botón «Eliminar cuenta» en la configuración. Herramientas populares para GDPR: OneTrust, la plataforma de gestión de consentimiento (CMP) de Google, Usercentrics. Garantizar la privacidad en una aplicación móvil requiere integración con CMP.
En IT Sectr implementamos el consentimiento GDPR durante la incorporación: el usuario ve una descripción clara, elige qué datos permite recopilar y puede cambiar su elección en la configuración. Esto no solo es un requisito legal, sino también un factor de confianza: las aplicaciones transparentes tienen una retención un 20% mayor (datos de IT Sectr, 2024). La privacidad de la aplicación móvil y la gestión de permisos de acceso son factores clave para la retención de usuarios.
Consentimiento debe ser: libre (no significa no), específico (no se puede recopilar consentimiento «para todo»), informado (el usuario sabe a qué está dando su consentimiento) e inequívoco (se requiere una acción afirmativa — casilla, botón). Las casillas previamente marcadas están prohibidas por GDPR. Las multas por infracción son de hasta el 4% de la facturación global o 20 millones de euros. La configuración correcta de los permisos de acceso en una aplicación móvil ayuda a evitar multas.
Basado en la experiencia de IT Sectr — varias recomendaciones prácticas para trabajar con permisos y privacidad. Solicite permisos en contexto: muestre una pantalla que explique por qué se necesita el permiso antes del diálogo del sistema. Por ejemplo, antes de solicitar la cámara, muestre: «Necesitamos acceso a la cámara para escanear códigos QR» — esto aumenta la probabilidad de consentimiento en un 40%. Los permisos de acceso en aplicaciones móviles deben solicitarse en el contexto de uso.
No solicite todos los permisos en el primer inicio. La solicitud contextual de permisos (solicitud en el momento de uso) ofrece una conversión un 60% mayor que la solicitud durante la incorporación. Maneje la denegación con elegancia: si el usuario deniega, no bloquee la funcionalidad, sino ofrezca una alternativa (por ejemplo, ingreso manual de dirección en lugar de geolocalización). La privacidad en la aplicación móvil se beneficia de este enfoque.
Para iOS, asegúrese de agregar un Privacy Manifest (obligatorio para todas las aplicaciones desde 2025). Para Android, indique una sección de seguridad de datos en Google Play Console. Almacene el estado de todos los permisos localmente y sincronícelo con la configuración del sistema. Realice auditorías periódicas de cumplimiento — la legislación cambia rápidamente. El modelo de permisos de acceso y la privacidad de la aplicación móvil requieren una auditoría constante.
Preguntas Frecuentes
ATT es un framework de Apple (iOS 14.5+) que requiere una solicitud explícita para rastrear al usuario. Sin consentimiento, IDFA devuelve ceros. La solicitud ATT debe contener una descripción clara del propósito del seguimiento. La tasa de aceptación es del 15–25% según la aplicación. Los permisos de acceso en una aplicación móvil en iOS requieren una descripción clara del propósito del seguimiento.
Normal Permissions se conceden automáticamente durante la instalación — no requieren solicitud (INTERNET, VIBRATE). Dangerous Permissions requieren una solicitud en tiempo de ejecución (CAMERA, LOCATION, MICROPHONE) — el usuario puede denegar en cualquier momento. Normal no afecta la privacidad; Dangerous proporciona acceso a datos personales.
GDPR exige: consentimiento explícito para la recopilación de datos, posibilidad de eliminar cuenta y datos, notificaciones de violaciones. Para aplicaciones: banner de consentimiento en el primer inicio, descripción clara de los fines de recopilación de datos, botón «Eliminar cuenta» en la configuración, incluyendo la gestión de permisos de acceso. Multa — hasta el 4% de la facturación.
IDFA (Identifier for Advertisers) es un identificador publicitario único del dispositivo en iOS. Se utiliza para segmentación de anuncios y atribución de instalaciones. Desde iOS 14.5, para acceder a IDFA se necesita consentimiento a través de ATT. En Android, el equivalente es GAID (Google Advertising ID). La privacidad de la aplicación móvil requiere control sobre los identificadores publicitarios.
Resumen
Desarrollaremos una aplicación móvil llave en mano
IT Sectr crea aplicaciones para iOS y Android para startups y empresas desde 2017. Le asesoraremos y le propondremos la mejor solución.