A menudo, las apps necesitan ofrecer uno o más de sus archivos a otra app. Por ejemplo, una galería de imágenes puede ofrecer archivos a editores de imágenes, o una app de administración de archivos puede permitir que los usuarios copien y peguen archivos entre áreas en el almacenamiento externo. Una forma en que una app emisora puede compartir un archivo es responder a una solicitud de la app receptora.
En todos los casos, la única forma segura de ofrecer un archivo de tu app a otra es enviar a la app receptora el URI de contenido del archivo y otorgar permisos de acceso temporales a ese URI.
Los URI de contenido con permisos de acceso temporales son seguros porque se aplican solo a la app que recibe el URI y vencen automáticamente. El componente FileProvider
de Android proporciona el método getUriForFile()
para generar el URI de contenido de un archivo.
Si quieres compartir pequeñas cantidades de datos de texto o numéricos entre apps, debes enviar un objeto Intent
que contenga los datos. Para aprender a enviar datos simples con un Intent
, consulta la clase de capacitación Cómo compartir datos simples.
En esta clase, se explica cómo compartir de forma segura archivos de tu app con otra utilizando los URI de contenido que genera el componente FileProvider
de Android y los permisos temporales que otorgas a la app receptora para el URI de contenido.
Lecciones
- Cómo configurar el uso compartido de archivos
- Obtén información sobre cómo configurar tu app para compartir archivos.
- Cómo compartir un archivo
- Obtén información sobre cómo ofrecer un archivo a otra app. Para ello, genera un URI de contenido para el archivo, otorga permisos de acceso al URI y envía el URI a la app.
- Cómo solicitar un archivo compartido
- Obtén información sobre cómo solicitar un archivo compartido por otra app, recibir el URI de contenido para el archivo y usar el URI de contenido para abrir el archivo.
- Cómo recuperar información de archivos
- Obtén información sobre cómo una app puede usar un URI de contenido generado por un
FileProvider
para recuperar información del archivo, como el tipo de MIME y el tamaño del archivo.
Para obtener información adicional relacionada, consulta: