Cómo limitar el acceso de una app a fotos específicas en Android, iOS y macOS

  • Android 14 introduce acceso parcial con READ_MEDIA_VISUAL_USER_SELECTED y potencia el Photo Picker.
  • iOS y macOS permiten autorizar “Fotos seleccionadas”, acceso total o solo añadir, revisable en Ajustes.
  • Google Fotos puede integrarse con la galería del fabricante; gestiona bien sincronización y borrados.
  • Refuerza la privacidad con bloqueo de apps, Carpeta privada de Google Fotos y Carpeta segura de Files.

Privacidad y control de acceso a fotos en el móvil

Si usas el móvil para todo y más, tus imágenes acaban siendo el baúl de los recuerdos y, a la vez, el punto más sensible del dispositivo. Limitar qué fotos puede ver cada app ya no es un capricho: es una medida básica de privacidad que Android, iOS y hasta macOS han refinado con controles muy finos.

En este artículo te contamos, con detalle y sin rodeos, cómo funciona ese control en Android 14 y posteriores (incluido el permiso READ_MEDIA_VISUAL_USER_SELECTED), qué cambia si tu app usa el selector de fotos del sistema, cómo se comporta iOS con las “Fotos seleccionadas” y cómo revisar permisos en macOS. También repasamos lo que debes saber de Google Fotos al integrarse con la galería del fabricante, y las herramientas nativas para blindar tu galería (Carpeta privada, Carpeta segura, bloqueo de apps…). De paso, ponemos contexto con el caso de Meta y su “procesamiento en la nube” para que veas por qué conviene ir con pies de plomo.

Qué significa de verdad limitar el acceso de una app a fotos concretas

La idea es simple: en vez de permitir que una app escarbe toda tu biblioteca, le das permiso solo a imágenes y vídeos que tú elijas. En Android 14 esta filosofía se materializa con el permiso READ_MEDIA_VISUAL_USER_SELECTED; en iOS y iPadOS existe desde hace tiempo el ajuste de “Fotos seleccionadas”, y en macOS puedes autorizar a apps y sitios web con varios niveles (todo, elementos elegidos por ti o solo añadir).

Con esta limitación, aplicaciones como redes sociales o editores ven únicamente lo que tú has aprobado. Si luego cambias de idea, puedes ampliar o recortar ese acceso desde los ajustes del sistema sin borrar la app, y el cambio es inmediato.

Android 14 y superiores: permisos, selector de fotos y nuevas reglas

Android 14 introduce un modo de acceso parcial que permite a las apps leer solo los elementos que el usuario seleccione. Para adoptarlo con un selector propio de galería, la app debe declarar y usar READ_MEDIA_VISUAL_USER_SELECTED además de los permisos de lectura multimedia estándar. Si la app en cambio utiliza el Photo Picker del sistema, obtiene una experiencia coherente, sin pedir permisos de almacenamiento, y el usuario controla la selección con una interfaz nativa.

Atención al objetivo de compilación: el comportamiento de acceso parcial solo se activa si tu app se orienta a Android 14 (nivel de API 34) o superior. Si no actualizas tu target, el sistema puede entrar en un modo de compatibilidad que veremos más adelante.

Permisos en el manifiesto según la versión del sistema

En dispositivos con Android 12L (API 32) o inferior, sigue vigente READ_EXTERNAL_STORAGE con maxSdkVersion 32. A partir de Android 13 (API 33), los permisos se separan por tipo: READ_MEDIA_IMAGES y READ_MEDIA_VIDEO. Y, si tu app apunta a Android 14 en adelante, añade READ_MEDIA_VISUAL_USER_SELECTED para poder gestionar la re-selección que el usuario haga dentro de tu interfaz.

Importante: desde Android 10 (API 29), muchas apps que solo añaden archivos al almacenamiento compartido (por ejemplo, guardar una foto nueva o un PDF) no necesitan permisos de lectura. Si solo “escribes” en el almacenamiento y no lees la galería, elimina la solicitud de permisos y limita READ_EXTERNAL_STORAGE a maxSdkVersion="28" en el AndroidManifest.xml.

Solicitud de permisos en tiempo de ejecución y re-selección

Además del manifiesto, deberás pedir los permisos en tiempo de ejecución según la API del dispositivo. En Android 14 o superior, combina la solicitud de READ_MEDIA_IMAGES y/o READ_MEDIA_VIDEO con READ_MEDIA_VISUAL_USER_SELECTED para que el sistema abra el diálogo que permite elegir fotos y vídeos concretos. Si solo pides vídeo, la interfaz mostrará únicamente vídeos; si pides imágenes y vídeos, aparecerá todo lo elegible.

Recomendación de UX: incorpora en tu app un botón o acción clara que el usuario toque antes de volver a pedir permisos. Evita que el sistema le sorprenda con un cuadro de diálogo que no esperaba, especialmente cuando intente volver a seleccionar contenido.

Detectar si tienes acceso completo, parcial o denegado

Tu app debería comprobar, en cada momento, si el acceso es completo (por ejemplo, cuando en Android 13 te han concedido READ_MEDIA_IMAGES o READ_MEDIA_VIDEO), si es parcial (en Android 14+ con READ_MEDIA_VISUAL_USER_SELECTED otorgado) o si está denegado. Actualiza la interfaz y los flujos en consecuencia y recuerda que, entre onStart y onResume, el usuario puede haber cambiado permisos en Ajustes.

Cómo consultar la biblioteca con MediaStore

Configurar acceso limitado a fotos por aplicación

Una vez verificado el acceso, puedes consultar la colección con ContentResolver y MediaStore, usando proyecciones de columnas como _ID, DISPLAY_NAME, SIZE o MIME_TYPE, y ordenando por fecha de añadido. Si el acceso es parcial, el conjunto de resultados reflejará exactamente lo que el usuario te ha permitido. Para buen rendimiento en producción, tira de paginación (por ejemplo, con la librería Paging) y ejecuta las consultas fuera del hilo principal.

Para abarcar todos los volúmenes de almacenamiento en Android 10+, usa el VOLUME_EXTERNAL con Images.Media.getContentUri en lugar del URI clásico de solo almacenamiento primario. Esto te garantiza que no te dejas fuera tarjetas SD u otros volúmenes externos.

La “última selección” en Android 15 y extensiones de Android 14

Si tu app corre en Android 15 o en Android 14 con actualizaciones de extensión de Play services que lleguen a la versión 12, puedes activar el argumento QUERY_ARG_LATEST_SELECTION_ONLY. Esta bandera hace que la consulta devuelva solo lo último que el usuario acaba de seleccionar, útil para refrescar vistas o importaciones sin re-escaneo completo. Comprueba la extensión con getExtensionVersion(Build.VERSION_CODES.U) y añade el orden con QUERY_ARG_SQL_SORT_ORDER por DATE_ADDED DESC.

Ten presente que esta capacidad depende de la versión de la extensión en el dispositivo. No asumas que siempre está disponible; implementa rutas alternativas cuando la consulta por última selección no sea posible.

Qué pasa al actualizar el dispositivo y cómo se conservan permisos

Si un dispositivo sube de una versión anterior de Android a Android 14, el sistema intenta conservar la situación previa. Por ejemplo, si en Android 13 el usuario te concedió READ_MEDIA_IMAGES y READ_MEDIA_VIDEO y luego el dispositivo se actualiza y tu app apunta a API 34, el acceso completo se mantiene y esos permisos siguen otorgados.

Si los permisos venían de READ_EXTERNAL_STORAGE o WRITE_EXTERNAL_STORAGE de Android 12 o anteriores, tras actualizar a Android 14 el sistema te concede automáticamente READ_MEDIA_IMAGES y READ_MEDIA_VIDEO. Ojo: el usuario puede revocar o una política corporativa puede anular concesiones, y el auto-restablecimiento también te puede dejar sin ellos. Verifica siempre en tiempo real.

Modo de compatibilidad si no adoptas el nuevo permiso

Si mantienes un selector propio y no incorporas READ_MEDIA_VISUAL_USER_SELECTED, el sistema entra en un modo de compatibilidad cuando el usuario selecciona o re-selecciona fotos. En la primera selección, si elige “Seleccionar fotos y vídeos”, Android te concede temporalmente READ_MEDIA_IMAGES y READ_MEDIA_VIDEO durante la sesión de la app, con un acceso que caduca cuando la app pasa a segundo plano o se cierra.

Más adelante, si necesitas ampliar el conjunto, tendrás que solicitar de nuevo READ_MEDIA_IMAGES o READ_MEDIA_VIDEO y el sistema repetirá el flujo de selección. Para una experiencia óptima, adopta el nuevo permiso o usa el Photo Picker nativo y evita depender de concesiones temporales que sorprendan al usuario.

Buenas prácticas para trabajar con fotos seleccionadas

Galeria Android

Hay una serie de recomendaciones que conviene seguir para que todo vaya fino y sin sustos. Aplicarlas reduce fricción y evita estados incoherentes entre lo que crees que puedes leer y lo que realmente puedes leer.

  • No guardes el estado de permisos de forma persistente (ni en SharedPreferences ni en DataStore). Comprueba con ContextCompat.checkSelfPermission() cada vez.
  • No supongas que tienes acceso completo a toda la biblioteca: con Android 14 podrías estar en acceso parcial y caches antiguas pueden estar desfasadas.
  • Trata los URI con acceso como temporales: el usuario puede cambiar la selección o caducar la concesión.
  • Solicita solo lo que necesitas: si tu función es de vídeo, pide READ_MEDIA_VIDEO; si es para imágenes, pide READ_MEDIA_IMAGES.
  • Para minimizar diálogos, pide en una misma operación READ_MEDIA_VISUAL_USER_SELECTED, lectura de multimedia y ACCESS_MEDIA_LOCATION si lo necesitas.
  • Incluye un control en la UI para que el usuario gestione su selección cuando está en modo parcial.

Y algo clave: solicita los permisos justo cuando hacen falta, no en el arranque de la app. Así das contexto al usuario y evitas rechazos por pedir “por si acaso”.

iOS y iPadOS: “Fotos seleccionadas”, “Todas” o “Ninguna”

En iPhone y iPad puedes decidir si una app accede a todo, solo a elementos que tú eliges en ese momento o directamente a nada. Ve a Ajustes > Privacidad > Fotos, localiza la app, y selecciona Fotos seleccionadas, Todas o Ninguna. iOS incluso te recuerda de vez en cuando si quieres seguir compartiendo toda la fototeca con ciertas apps.

Una duda frecuente: si desactivas el acceso limitado y pasas a “Todas”, ¿apps como FB, IG o WhatsApp ven todas tus fotos solo por abrir el selector? Lo que ocurre es que, con acceso total, la app puede listar y previsualizar la librería cuando invocas su selector, siempre bajo la sandbox de Apple; por eso, si te preocupa tu privacidad, lo razonable es quedarte con Fotos seleccionadas y conceder solo lo necesario en cada subida.

Además, desde Ajustes > Privacidad y seguridad puedes revisar otras categorías (Contactos, Calendarios, Recordatorios, Movimiento y fitness, etc.) y activar o desactivar el acceso por app. El enfoque es idéntico: control por categorías, conmutadores claros y posibilidad de revocar en cualquier momento.

macOS: autoriza el uso de tu fototeca por niveles

mac

En Mac, si una app o un sitio web quiere usar tu fototeca, verás un cuadro de diálogo para autorizar. Puedes dar acceso total, solo a elementos seleccionados o permitir únicamente añadir fotos (sin leer lo que ya hay). Todo se gestiona desde Ajustes del Sistema > Privacidad y seguridad > Fotos, donde revisas y cambias quién puede acceder.

Si habilitas a terceros, recuerda que lo que recojan se rige por sus políticas de privacidad. Antes de dar luz verde, echa un ojo a esas condiciones; si más tarde te arrepientes, vuelve a Ajustes y corta el grifo desde el panel de Fotos.

Google Fotos y la galería del fabricante: lo que debes saber

En algunos dispositivos, Google Fotos puede compartir acceso con la galería predeterminada del fabricante para que veas en esa galería el contenido que está respaldado en la nube. Al autorizarlo, permites a Google Fotos intercambiar información de tu cuenta (como el estado de la copia de seguridad) con la app de galería del teléfono.

Requisitos: necesitas un dispositivo compatible (marcas como Xiaomi, OPPO, OnePlus o Realme), Android 11 o posterior y la última versión de la app Google Fotos. Puede aparecer una ventana pidiéndote permiso: toca “No permitir” o “Permitir” según prefieras, y si te arrepientes, ajústalo después en los ajustes de Google Fotos o en la galería del fabricante.

Para quitar el acceso de la galería predeterminada a Google Fotos: abre Google Fotos > tu perfil (arriba a la derecha) > Ajustes de Fotos > Aplicaciones y dispositivos > Acceso a Google Fotos, entra en la galería predeterminada y elige “Quitar acceso”.

Si quieres restaurar ese acceso más tarde, deberás hacerlo desde la app de galería del fabricante, en algo como “sincronización en la nube” o “copia de seguridad en la nube”. Ten en cuenta que tendrás que repetir la concesión si borras los datos de Google Fotos, desinstalas la app, restableces el teléfono o cambias a un dispositivo nuevo.

Ojo con las consecuencias: si permites este enlace, las fotos que borres desde la galería del fabricante pueden borrarse también de Google Fotos, incluso aunque tengan copia de seguridad. Revisa el comportamiento de tu marca antes de confirmar. Si lo que quieres es liberar espacio en el dispositivo sin borrar la copia en la nube, usa “Eliminar del dispositivo” desde Google Fotos.

¿Ves desajustes entre dispositivos? Entra en Google Fotos > tu perfil > Revisar los cambios no sincronizados y sigue las indicaciones para resolver discrepancias de edición, borrado o restauración. Ten en mente que si editas en la galería del fabricante, puede que Google Fotos conserve la copia anterior en la nube, y ciertos tipos (como retratos) pueden guardar cambios de forma distinta.

Los duplicados también se comportan diferente: la galería de tu móvil muestra todas las copias locales; Google Fotos tiende a mostrar una sola. Al borrar desde Google Fotos puede preguntarte si quieres eliminar todas las copias locales. Si borras desde la galería predeterminada, puede eliminar solo una de las copias y mantener otras.

Los álbumes tampoco son equivalentes entre la galería del fabricante y Google Fotos: cambiar el nombre en la galería no implica que veas lo mismo en Google Fotos. Si borras Google Fotos o sus datos, la galería del fabricante pierde el acceso y puede que Google Fotos vuelva a subir originales si quedaban cambios sin resolver. Gestiona el almacenamiento con cabeza para evitar sorpresas.

Respecto a los metadatos de álbumes, hoy la copia de seguridad de esa información desde la galería predeterminada hacia Google Fotos está disponible en dispositivos Vivo y requiere tener activada la copia de seguridad de Google Fotos. Se sincroniza por fabricante, y si tienes móviles de varias marcas, Google almacena los datos separados para cada una. Puedes borrar la telemetría de un fabricante desde photos.google.com > Configuración > “Eliminar datos del álbum de la galería predeterminada”.

Si no usas un dispositivo de un fabricante durante 6 meses, Google podría eliminar los datos de esos álbumes (no las fotos ni vídeos). Recibirás avisos por correo con un mes de antelación y podrás evitarlo usando el dispositivo o descargando tu contenido desde los servicios de Google.

Herramientas nativas de Android para proteger tu galería sin apps raras

Más allá de los permisos, Android incorpora recursos útiles para que nadie cotillee tu galería aunque te pidan el móvil un momento. El primer pilar es configurar una contraseña de privacidad (PIN, patrón o clave alfanumérica) distinta del bloqueo de pantalla, normalmente en Ajustes > Privacidad y seguridad. Algunas funciones (bloqueo de aplicaciones, espacio privado) usan esta credencial.

Android 7.1.1 actualización Nexus

Con el “Bloqueo de aplicaciones” que incluyen muchos fabricantes, puedes ponerle un candado a Google Fotos, la Galería del teléfono o editores de imagen/vídeo. Al abrir esas apps, el sistema exige la contraseña de privacidad, y se acabó el problema si dejas el móvil a alguien o si lo desbloquean mirando por encima del hombro.

También suele existir la opción de ocultar aplicaciones, para que no aparezcan en el cajón, escritorio ni recientes. Es útil para la galería si prefieres invisibilidad pura y dura. En algunas capas, se muestran con un código secreto en la app de Teléfono; consulta la ayuda de tu marca para el flujo exacto.

El “Espacio privado”, “Carpeta segura” o “Caja fuerte” del fabricante te permite aislar apps y archivos en un entorno protegido por otra contraseña. Así, tu galería o álbumes sensibles ni siquiera figuran en el perfil principal del teléfono, reduciendo mucho el riesgo de accesos accidentales.

Google Fotos ofrece la Carpeta privada (o Carpeta bloqueada) para esconder elementos delicados. Los que muevas ahí desaparecen de la cuadrícula, búsquedas, recuerdos y de otras apps. El desbloqueo depende del bloqueo de pantalla y/o tu cuenta de Google. Si creas la carpeta en el móvil con la copia de seguridad desactivada, puede que no veas su contenido en la web; si quieres acceso desde ordenador, revisa esa configuración.

Para usarla: en el móvil, abre Google Fotos, selecciona elementos y elige “Mover a Carpeta privada”. En la web, ve a photos.google.com y configura la sección de Carpeta privada si aún no existe. Recuerda que no se mueven automáticamente variantes como copias o ediciones: si quieres ocultarlas, muévelas también, y no podrás enviar elementos directamente desde la papelera a la Carpeta privada (primero restaura, luego mueve).

Dentro de la Carpeta privada puedes sacar elementos o eliminarlos definitivamente, pero no añadirlos a álbumes, compartirlos ni editarlos. Tampoco aparecen en recuerdos, búsquedas, emisores como Chromecast o pantallas inteligentes, y retirarlos de todos esos sitios puede tardar un poco. No la confundas con el Archivo: el Archivo solo aparta de la vista, no protege con bloqueo.

Si desactivas la copia de seguridad de la Carpeta privada, esos archivos no viajarán en migraciones por USB o nube; si restableces el dispositivo, borras datos de la app o desinstalas Google Fotos, podrías perderlos. Haz copia de seguridad si vas a cambiar de móvil o formatear el actual. La Carpeta privada puede no estar disponible en dispositivos gestionados (empresa) o ciertos tipos de cuenta.

Si prefieres manejar ficheros en vez de “fotos”, Files de Google incorpora una Carpeta segura protegida por PIN o patrón. Entra en “Explorar” > “Imágenes”, selecciona y toca “Mover a Carpeta segura”. Para compartir algo, sácalo primero y luego envíalo; mientras esté dentro, no aparecerá en la galería ni será accesible por otras apps.

Riesgos reales y actualidad: por qué conviene ser selectivo

barra navegacion botones android

Hace poco supimos que Facebook empezó a sugerir un “procesamiento en la nube” para generar ideas creativas a partir del carrete. Al aceptarlo, la app puede subir fotos a su nube y, según las condiciones de Meta AI, analizarlas (incluidas características faciales). La compañía dice que ahora no entrena sus modelos con esas fotos no publicadas, pero no descarta hacerlo en el futuro. De momento afecta a EE. UU., aunque podría ampliarse, así que más vale estar atento.

Quizá te pasa como a muchos: por comodidad, habilitas acceso completo y te olvidas. iOS incluso te recuerda de vez en cuando si quieres seguir compartiendo todo con ciertas apps y es fácil ignorarlo. Limitar el acceso no resulta tan pesado: cuando quieres subir algo, concedes acceso a ese algo y listo; un paso más, sí, pero rápido. En apps como Instagram, entra en Ajustes del sistema, abre el permiso de Fotos y elige “Acceso limitado”.

Vivimos la era de la IA, donde se necesita una cantidad ingente de datos para entrenar modelos. Entre polémicas por uso de contenido con copyright, datos de plataformas y hasta casos con imágenes sensibles, conviene extremar la prudencia. Leer la letra pequeña de las apps se ha vuelto más importante que nunca.

Con todo lo anterior, queda claro que tu mejor defensa es combinar controles del sistema (permisos parciales de Android 14, “Fotos seleccionadas” en iOS, panel de Fotos en macOS) con barreras prácticas como el bloqueo de aplicaciones, el espacio privado del fabricante y las carpetas seguras de Google. Si además entiendes qué implica enlazar Google Fotos con la galería de tu marca, evitarás borrados no deseados y desajustes de sincronización.

Elegir conscientemente a qué puede acceder cada app, revisar permisos de vez en cuando y aprovechar las funciones de bloqueo y carpetas privadas te pone en control. La comodidad no tiene por qué estar reñida con la privacidad: con dos o tres ajustes bien puestos, tu galería deja de ser un escaparate y pasa a estar bajo llave, abriéndose solo cuando tú lo decides.

Restringir acceso galería de fotos
Artículo relacionado:
Restringe el acceso a la galería de fotos en Android: Tutorial