アプリケーション データ フォルダは、アプリが構成ファイルなどのアプリ固有のデータを保存するために使用できる特別な非表示フォルダです。アプリケーション データ フォルダは、その中にファイルを作成しようとすると自動的に作成されます。このフォルダは、ユーザーが直接操作すべきでないファイルを保存するために使用します。このフォルダにはアプリのみがアクセスでき、そのコンテンツはユーザーや他の Google ドライブ アプリから隠されます。
ユーザーがマイドライブからアプリをアンインストールすると、アプリデータ フォルダが削除されます。ユーザーはアプリのデータフォルダを手動で削除することもできます。
アプリケーション データ フォルダのスコープ
アプリデータ フォルダにアクセスするには、https://www.googleapis.com/auth/drive.appdata の機密情報を含まないスコープへのアクセスをリクエストする必要があります。スコープとそのアクセス権をリクエストする方法について詳しくは、Google Drive API のスコープを選択するをご覧ください。特定の OAuth 2.0 スコープの詳細については、Google API の OAuth 2.0 スコープをご覧ください。
アプリデータ フォルダとドライブのバックアップ フォルダの違い
アプリデータ フォルダは、ドライブのバックアップ フォルダとは別のものです。
アプリケーション データ フォルダは、サードパーティ製アプリごとに作成される構成フォルダで、各サードパーティ製アプリがデータを保存できます。appDataFolder 内のデータにアクセスできるのは、そのデータを作成したアプリケーションのみです。このフォルダには、ドライブのユーザー インターフェース(UI)を使用してアクセスすることはできません。
ドライブのバックアップ フォルダは、ドライブがデバイスのバックアップを書き込む予約済みのフォルダで、ドライブの UI に表示されます。
アプリケーション データ フォルダに関する制約
アプリケーション データ フォルダを操作する際は、次の制約が適用されます。
アプリケーション データ フォルダ内のファイルやフォルダを共有することはできません。このような操作を行うと、次のエラー メッセージを含む
notSupportedForAppDataFolderFilesエラーが生成されます。「Method not supported for files within the Application Data folder.」appDataFolder内のファイルをストレージの場所(スペース)間で移動することはできません。このような操作を行うと、次のエラー メッセージとともにnotSupportedForAppDataFolderFilesエラーが生成されます。「Method not supported for files within the Application Data folder.」詳細については、ファイルの整理をご覧ください。アプリケーション データ フォルダ内のファイルやフォルダをゴミ箱に移動することはできません。この操作を行うと、次のエラー メッセージが表示されて
notSupportedForAppDataFolderFilesエラーが発生します。「アプリケーション データ フォルダ内のファイルをゴミ箱に移動することはできません。」
アプリケーション データ フォルダにファイルを作成する
アプリデータ フォルダにファイルを作成するには、ファイルの parents プロパティで appDataFolder を指定し、files.create メソッドを使用してフォルダにファイルを作成します。
次のコードサンプルは、クライアント ライブラリと 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"]}'
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
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)"
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 URL パラメータを使用して、レスポンス本文でファイルの内容を取得します。詳細とコードサンプルについては、BLOB ファイルのコンテンツをダウンロードするをご覧ください。
次のコードサンプルは、curl コマンドを使用してアプリケーション データ フォルダ内のファイルをダウンロードする方法を示しています。レスポンスの本文は、保存された内容によって異なります。
curl
Request からのメールのデータを読み取ります。
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。