应用数据文件夹是一种特殊的隐藏文件夹,您的应用可以使用它来存储应用专属数据,例如配置文件。 当您尝试在应用数据文件夹中创建文件时,系统会自动创建该文件夹。 使用此文件夹存储用户不应直接与之交互的任何文件。只有您的应用才能访问此文件夹,其内容对用户和其他 Google 云端硬盘应用都是隐藏的。
当用户从“我的云端硬盘”中卸载您的应用时,系统会删除应用数据文件夹。用户也可以手动删除应用的数据文件夹。
应用数据文件夹范围
如需访问应用数据文件夹,您必须请求访问 https://www.googleapis.com/auth/drive.appdata 非敏感范围。如需详细了解范围以及如何请求访问范围,请参阅
选择 Google Drive API 范围。如需详细了解特定的 OAuth 2.0 范围,请参阅适用于 Google
API 的 OAuth 2.0 范围。
应用数据文件夹与云端硬盘备份文件夹的区别
应用数据文件夹与云端硬盘备份文件夹是分开的。
应用数据文件夹是为每个第三方应用创建的配置文件夹,每个第三方应用都可以在其中存储数据。只有在 appDataFolder 中创建数据的应用才能访问该数据。无法使用云端硬盘界面访问该文件夹。
您的 云端硬盘备份 文件夹 是云端硬盘写入设备备份的预留文件夹,并且在 云端硬盘界面中可见。
对应用数据文件夹的限制
使用应用数据文件夹时,系统会强制执行以下限制:
您无法共享应用数据文件夹中的文件或文件夹。 如果您尝试这样做,系统会生成
notSupportedForAppDataFolderFiles错误,并显示以下错误消息:“Method not supported for files within the Application Data folder.”(应用数据文件夹中的文件不支持此方法。)您无法在存储位置(空间)之间移动
appDataFolder中的文件。如果您尝试这样做,系统会生成notSupportedForAppDataFolderFiles错误,并显示以下错误消息:“Method not supported for files within the Application Data folder.”(应用数据文件夹中的文件不支持此方法。) 如需了解 详情,请参阅文件 整理。您无法将应用数据文件夹中的文件或文件夹移至回收站。 如果您尝试这样做,系统会生成
notSupportedForAppDataFolderFiles错误,并显示以下错误消息:“Files within the Application Data folder cannot be trashed.”(应用数据文件夹中的文件无法移至回收站。)
在应用数据文件夹中创建文件
如需在应用数据文件夹中创建文件,请在文件的
parents属性中指定appDataFolder,并使用
files.create方法在该文件夹中创建文件。
以下代码示例展示了如何使用客户端库和 curl 命令将文件插入文件夹。
Java
Python
Node.js
PHP
.NET
curl
请求:
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"]}'
将 ACCESS_TOKEN 替换为应用的 OAuth 2.0 令牌。
响应:
{
"kind": "drive#file",
"id": FILE_ID,
"name": "config.json",
"mimeType": "application/json"
}
如需详细了解如何在文件夹中创建文件,请参阅创建文件夹并向其中填充内容。
在应用数据文件夹中搜索文件
如需在应用数据文件夹中搜索文件,请将 spaces 字段设置为
appDataFolder,并使用 files.list
方法。
以下代码示例展示了如何使用客户端库和 curl 命令在应用数据文件夹中搜索文件。
Java
Python
Node.js
PHP
.NET
curl
请求:
curl \
-X GET \
-H "Authorization: Bearer ACCESS_TOKEN" \
"https://www.googleapis.com/drive/v3/files?spaces=appDataFolder&fields=files(id,name,mimeType,size,modifiedTime)"
将 ACCESS_TOKEN 替换为应用的 OAuth 2.0 令牌。
响应:
{
"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"
}
]
}
从应用数据文件夹下载文件
如需从应用数据文件夹下载文件,请使用 files.get 方法和 alt=media 网址参数,以
在响应正文中检索文件内容。如需了解详情并
查看代码示例,请参阅下载 Blob 文件
内容。
以下代码示例展示了如何使用 curl 命令下载应用数据文件夹中的文件。响应正文因保存的内容而异。
curl
请求:
curl \
-X GET \
-H "Authorization: Bearer ACCESS_TOKEN" \
"https://www.googleapis.com/drive/v3/files/FILE_ID?alt=media"
替换以下内容:
- ACCESS_TOKEN:应用的 OAuth 2.0 令牌。
- FILE_ID:您要下载的文件的 ID。