תיקיית נתוני האפליקציה היא תיקייה מוסתרת מיוחדת שבה האפליקציה יכולה לאחסן נתונים ספציפיים לאפליקציה, כמו קובצי תצורה. התיקייה של נתוני האפליקציה נוצרת באופן אוטומטי כשמנסים ליצור בה קובץ. בתיקייה הזו שומרים קבצים שהמשתמש לא אמור לבצע איתם אינטראקציה ישירה. רק לאפליקציה שלכם תהיה גישה לתיקייה הזו, והתוכן שלה יהיה מוסתר מהמשתמש ומאפליקציות אחרות של Google Drive.
התיקייה של נתוני האפליקציה נמחקת כשמשתמש מסיר את האפליקציה מתיקיית 'האחסון שלי'. המשתמשים יכולים גם למחוק את תיקיית הנתונים של האפליקציה באופן ידני.
היקף התיקייה של נתוני האפליקציה
כדי לגשת לתיקיית נתוני האפליקציה, צריך לבקש גישה להיקף https://www.googleapis.com/auth/drive.appdata
שאינו רגיש. למידע נוסף על ההיקפים ועל האופן שבו מבקשים גישה אליהם, ראו בחירת היקפים של Google Drive API. למידע נוסף על היקפי הרשאות ספציפיים של OAuth 2.0, ראו היקפי הרשאות של OAuth 2.0 ל-Google APIs.
מה ההבדל בין תיקיית נתוני האפליקציה לתיקיות הגיבוי ב-Drive
התיקייה של נתוני האפליקציה נפרדת מתיקיית הגיבוי ב-Drive.
תיקיית נתוני האפליקציה היא תיקיית תצורה שנוצרת לכל אפליקציה של צד שלישי, וכל אפליקציה של צד שלישי יכולה לאחסן בה נתונים. רק לאפליקציה שיצרה את הנתונים ב-appDataFolder
יש גישה אליהם. אי אפשר לגשת לתיקייה באמצעות ממשק המשתמש (UI) של Drive.
תיקיית הגיבוי ב-Drive היא תיקייה שמורה שבה Drive כותב את הגיבויים של המכשיר, והיא מוצגת בממשק המשתמש של Drive.
אילוצים על התיקייה של נתוני האפליקציה
כשעובדים עם התיקייה של נתוני האפליקציה, מתבצעת אכיפה של האילוצים הבאים:
אי אפשר לשתף קבצים או תיקיות בתוך התיקייה של נתוני האפליקציה. ניסיון לעשות זאת יגרום לשגיאה
notSupportedForAppDataFolderFiles
עם הודעת השגיאה הבאה: "Method not supported for files within the Application Data folder".אי אפשר להעביר קבצים ב-
appDataFolder
בין מיקומי אחסון (מרחבים). ניסיון לעשות זאת יגרום לשגיאהnotSupportedForAppDataFolderFiles
עם הודעת השגיאה הבאה: "Method not supported for files within the Application Data folder". למידע נוסף, ראו ארגון קבצים.אי אפשר להעביר לאשפה קבצים או תיקיות שנמצאים בתיקיית נתוני האפליקציה. ניסיון לעשות זאת יגרום לשגיאה
notSupportedForAppDataFolderFiles
עם הודעת השגיאה הבאה: "לא ניתן להעביר לאשפה קבצים בתיקיית Application Data".
יצירת קובץ בתיקיית נתוני האפליקציה
כדי ליצור קובץ בתיקיית נתוני האפליקציה, מציינים את הערך appDataFolder
במאפיין parents
של הקובץ ומשתמשים ב-method 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
ומשתמשים ב-method 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
עם פרמטר כתובת ה-URL 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: המזהה של הקובץ שרוצים להוריד.