Partager des fichiers
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Les applications ont souvent besoin d'envoyer un ou plusieurs de leurs fichiers à une autre application. Par exemple, une galerie d'images peut proposer des fichiers aux éditeurs d'images, ou une application de gestion de fichiers peut autoriser les utilisateurs à copier et coller des fichiers entre des zones d'un espace de stockage externe. Une application émettrice peut partager un fichier en répondant à une requête de l'application réceptrice.
Dans tous les cas, le seul moyen sécurisé de proposer un fichier de votre application à une autre application consiste à envoyer l'URI du contenu du fichier à l'application réceptrice et à lui accorder des autorisations d'accès temporaires.
Les URI de contenu avec des autorisations d'accès temporaires aux URI sont sécurisés, car ils ne s'appliquent qu'à l'application qui reçoit l'URI et expirent automatiquement. Le composant FileProvider
d'Android fournit la méthode getUriForFile()
pour générer l'URI de contenu d'un fichier.
Si vous souhaitez partager de petites quantités de texte ou de données numériques entre les applications, vous devez envoyer une Intent
contenant les données. Pour savoir comment envoyer des données simples avec un Intent
, consultez la formation Partager des données simples.
Cette classe explique comment partager de manière sécurisée des fichiers de votre application avec une autre à l'aide des URI de contenu générés par le composant Android FileProvider
et des autorisations temporaires que vous accordez à l'application réceptrice pour l'URI de contenu.
Leçons
- Configurer le partage de fichiers
-
Découvrez comment configurer votre application pour partager des fichiers.
- Partager un fichier
- Découvrez comment proposer un fichier à une autre application en générant un URI de contenu pour le fichier, en accordant des autorisations d'accès à l'URI et en envoyant l'URI à l'application.
- Demander un fichier partagé
- Découvrez comment demander un fichier partagé par une autre application, recevoir l'URI de contenu du fichier et utiliser l'URI de contenu pour ouvrir le fichier.
-
Récupérer des informations sur un fichier
- Découvrez comment une application peut utiliser un URI de contenu généré par un élément
FileProvider
pour récupérer des informations sur un fichier, y compris le type MIME et la taille du fichier.
Pour en savoir plus, consultez les ressources suivantes:
Le contenu et les exemples de code de cette page sont soumis aux licences décrites dans la Licence de contenu. Java et OpenJDK sont des marques ou des marques déposées d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/27 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/07/27 (UTC)."],[],[],null,["# Sharing files\n\nApps often have a need to offer one or more of their files to another app. For example, an image\ngallery may want to offer files to image editors, or a file management app may want to allow\nusers to copy and paste files between areas in external storage. One way a sending app can\nshare a file is to respond to a request from the receiving app.\n\n\nIn all cases, the only secure way to offer a file from your app to another app is to send the\nreceiving app the file's content URI and grant temporary access permissions to that URI.\nContent URIs with temporary URI access permissions are secure because they apply only to the\napp that receives the URI, and they expire automatically. The Android\n[FileProvider](/reference/androidx/core/content/FileProvider) component provides the method\n[getUriForFile()](/reference/androidx/core/content/FileProvider#getUriForFile(android.content.Context, java.lang.String, java.io.File)) for\ngenerating a file's content URI.\n\n\nIf you want to share small amounts of text or numeric data between apps, you should send an\n[Intent](/reference/android/content/Intent) that contains the data. To learn how to send simple data with an\n[Intent](/reference/android/content/Intent), see the training class\n[Sharing simple data](/training/sharing).\n\n\nThis class explains how to securely share files from your app to another app using content URIs\ngenerated by the Android [FileProvider](/reference/androidx/core/content/FileProvider) component and\ntemporary permissions that you grant to the receiving app for the content URI.\n\nLessons\n-------\n\n**[Setting up file sharing](/training/secure-file-sharing/setup-sharing)**\n:\n Learn how to set up your app to share files.\n\n**[Sharing a file](/training/secure-file-sharing/share-file)**\n:\n Learn how to offer a file to another app by generating a content URI for the file,\n granting access permissions to the URI, and sending the URI to the app.\n\n**[Requesting a shared file](/training/secure-file-sharing/request-file)**\n:\n Learn how to request a file shared by another app, receive the content URI for the file,\n and use the content URI to open the file.\n\n\n**[Retrieving file information](/training/secure-file-sharing/retrieve-info)**\n:\n Learn how an app can use a content URI generated by a\n [FileProvider](/reference/androidx/core/content/FileProvider) to retrieve file information including\n MIME type and file size.\n\nFor additional related information, refer to:\n\n- [Storage Options](/guide/topics/data/data-storage)\n- [Saving Files](/training/basics/data-storage/files)\n- [Sharing Simple Data](/training/sharing)"]]