アプリデータ フォルダ は、アプリ固有のデータ(構成ファイルなど)を保存するために使用できる特別な非表示フォルダです。アプリデータ フォルダにファイルを作成しようとすると、フォルダが自動的に作成されます。 このフォルダは、ユーザーが直接操作すべきでないファイルを保存するために使用します。このフォルダにアクセスできるのはアプリのみで、その内容はユーザーや他の 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エラーが生成され、「Files within the Application Data folder cannot be trashed.」というエラー メッセージが表示されます。
アプリデータ フォルダにファイルを作成する
アプリデータ フォルダにファイルを作成するには、ファイルの
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。