Le dossier de données d'application est un dossier caché spécial que votre application peut utiliser pour stocker des données spécifiques à l'application, telles que des fichiers de configuration. Le dossier de données de l'application est créé automatiquement lorsque vous essayez d'y créer un fichier. Utilisez ce dossier pour stocker tous les fichiers avec lesquels l'utilisateur ne doit pas interagir directement. Ce dossier n'est accessible que par votre application et son contenu est masqué pour l'utilisateur et les autres applications Google Drive.
Le dossier de données de l'application est supprimé lorsqu'un utilisateur désinstalle votre application de son dossier Mon Drive. Les utilisateurs peuvent également supprimer manuellement le dossier de données de votre application.
Portée du dossier de données d'application
Avant de pouvoir accéder au dossier de données de l'application, vous devez demander l'accès au champ https://www.googleapis.com/auth/drive.appdata
non sensible. Pour en savoir plus sur les habilitations et sur la façon de demander l'accès à celles-ci, consultez Choisir les habilitations de l'API Google Drive. Pour en savoir plus sur les champs d'application OAuth 2.0 spécifiques, consultez Champs d'application OAuth 2.0 pour les API Google.
Différence entre le dossier de données d'application et les dossiers de sauvegarde Drive
Le dossier de données d'application est distinct de votre dossier de sauvegarde Drive.
Le dossier de données d'application est un dossier de configuration créé pour chaque application tierce. Chaque application tierce peut y stocker des données. Seule l'application qui a créé les données dans appDataFolder
peut y accéder. Il est impossible d'accéder au dossier à l'aide de l'interface utilisateur (UI) de Drive.
Votre dossier de sauvegarde Drive est un dossier réservé dans lequel Drive écrit les sauvegardes de l'appareil. Il est visible dans l'interface utilisateur de Drive.
Contraintes sur le dossier de données de l'application
Les contraintes suivantes sont appliquées lorsque vous travaillez avec le dossier de données de l'application :
Vous ne pouvez pas partager de fichiers ni de dossiers dans le dossier de données de l'application. Toute tentative de le faire génère une erreur
notSupportedForAppDataFolderFiles
avec le message d'erreur suivant : "Méthode non acceptée pour les fichiers du dossier "Données d'application"."Vous ne pouvez pas déplacer des fichiers dans
appDataFolder
entre des emplacements de stockage (espaces). Toute tentative de le faire génère une erreurnotSupportedForAppDataFolderFiles
avec le message d'erreur suivant : "Méthode non acceptée pour les fichiers du dossier "Données d'application"." Pour en savoir plus, consultez Organisation des fichiers.Vous ne pouvez pas placer de fichiers ni de dossiers dans la corbeille à l'intérieur du dossier de données de l'application. Toute tentative de suppression génère une erreur
notSupportedForAppDataFolderFiles
avec le message d'erreur suivant : "Les fichiers du dossier "Données d'application" ne peuvent pas être placés dans la corbeille."
Créer un fichier dans le dossier de données de l'application
Pour créer un fichier dans le dossier de données de l'application, spécifiez appDataFolder
dans la propriété parents
du fichier et utilisez la méthode files.create
pour créer le fichier dans le dossier.
L'exemple de code suivant montre comment insérer un fichier dans un dossier à l'aide d'une bibliothèque cliente et d'une commande curl.
Java
Python
Node.js
PHP
.NET
curl
Request :
curl --request POST \ 'https://content.googleapis.com/drive/v3/files' \ -H 'authorization: Bearer ACCESS_TOKEN' \ -H 'content-type: application/json' \ -H 'x-origin: https://explorer.apis.google.com' \ --data-raw '{"name": "config.json", "parents":["appDataFolder"]}'
Remplacez ACCESS_TOKEN par le jeton OAuth 2.0 de votre application.
Réponse :
{ "kind": "drive#file", "id": FILE_ID, "name": "config.json", "mimeType": "application/json" }
Pour en savoir plus sur la création de fichiers dans des dossiers, consultez Créer et remplir des dossiers.
Rechercher des fichiers dans le dossier de données de l'application
Pour rechercher des fichiers dans le dossier de données de l'application, définissez le champ spaces
sur appDataFolder
et utilisez la méthode files.list
.
L'exemple de code suivant montre comment rechercher des fichiers dans le dossier de données de l'application à l'aide d'une bibliothèque cliente et d'une commande curl.
Java
Python
Node.js
PHP
.NET
curl
Request :
curl \ -X GET \ -H "Authorization: Bearer ACCESS_TOKEN" \ "https://www.googleapis.com/drive/v3/files?spaces=appDataFolder&fields=files(id,name,mimeType,size,modifiedTime)"
Remplacez ACCESS_TOKEN par le jeton OAuth 2.0 de votre application.
Réponse :
{ "files": [ { "mimeType": "application/json", "size": "256", "id": FILE_ID, "name": "config.json", "modifiedTime": "2025-04-03T23:40:05.860Z" }, { "mimeType": "text/plain", "size": "128", "id": FILE_ID, "name": "user_settings.txt", "modifiedTime": "2025-04-02T17:52:29.020Z" } ] }
Télécharger des fichiers à partir du dossier de données de l'application
Pour télécharger un fichier à partir du dossier de données de l'application, utilisez la méthode files.get
avec le paramètre d'URL alt=media
pour récupérer le contenu du fichier dans le corps de la réponse. Pour en savoir plus et consulter des exemples de code, accédez à Télécharger le contenu d'un fichier blob.
L'exemple de code suivant montre comment télécharger des fichiers dans le dossier de données d'application à l'aide d'une commande curl. Le corps de la réponse varie en fonction de ce qui est enregistré.
curl
Request :
curl \ -X GET \ -H "Authorization: Bearer ACCESS_TOKEN" \ "https://www.googleapis.com/drive/v3/files/FILE_ID?alt=media"
Remplacez les éléments suivants :
- ACCESS_TOKEN : jeton OAuth 2.0 de votre application.
- FILE_ID : ID du fichier que vous souhaitez télécharger.