Cloud Storage for Firebase מאפשר להעלות ולשתף תוכן שנוצר על ידי משתמשים, כמו כמו תמונות וסרטונים, מה שמאפשר לכם לבנות תוכן של מדיה עשירה תרגום מכונה. הנתונים שלך מאוחסנים קטגוריה Google Cloud Storage — פתרון לאחסון אובייקטים בקנה מידה של exabyte עם זמינות גבוהה וגלובלי יתירות. באמצעות Cloud Storage for Firebase אפשר להעלות את הקבצים האלה באופן מאובטח ישירות ממכשירים ניידים ומדפדפני אינטרנט, מטפלים ברשתות בעייתיות עם קלה.
דרישות מוקדמות
אם עדיין לא עשיתם זאת, מוסיפים את Firebase לפרויקט Android.
יצירת קטגוריית ברירת מחדל של Cloud Storage
בחלונית הניווט של מסוף Firebase, לוחצים על Storage, ולוחצים על Get started (תחילת העבודה).
חשוב לקרוא את ההודעה לגבי אבטחת הנתונים של Cloud Storage באמצעות אבטחה כללים. במהלך הפיתוח, כדאי לחשוב על להגדיר כללים לגישה ציבורית.
צריך לבחור מיקום להגדרת ברירת המחדל קטגוריה Cloud Storage.
הגדרת המיקום הזו היא של הפרויקט שלך מיקום ברירת המחדל של משאב ב-Google Cloud Platform (GCP). חשוב לשים לב שהמיקום הזה ישמש לשירותי GCP בפרויקט שלך. שמצריכות הגדרת מיקום, בפרט מסד הנתונים של Cloud Firestore אפליקציית App Engine (נדרש אם אתם משתמשים ב-Cloud Scheduler).
אם אין אפשרות לבחור מיקום, סימן שהפרויקט כבר פועל יש לו מיקום משאב GCP כברירת מחדל. היא הוגדרה במהלך הפרויקט או במהלך ההגדרה של שירות אחר שדורש מיקום הגדרה אישית.
אם את/ה בתוכנית Blaze, יש לך אפשרות ליצור מספר קטגוריות, לכל אחת מהן location.
לוחצים על סיום.
הגדרת גישה ציבורית
Cloud Storage for Firebase: ניסוח של כללים הצהרתי שמאפשר כדי להגדיר את המבנה של הנתונים, איך כדאי להוסיף אותם לאינדקס ומתי שניתן לקרוא מהם את הנתונים ולכתוב בהם. כברירת מחדל, יש לכם גישת קריאה וכתיבה אל השירות Cloud Storage מוגבל, כך שרק משתמשים מאומתים יכולים לקרוא או לכתוב . כדי להתחיל בלי להגדיר את Authentication, תוכלו להגדיר את הכללים לגישה ציבורית.
זה הופך את Cloud Storage לפתוח לכולם, אפילו לאנשים שלא משתמשים לכן חשוב להגביל שוב את Cloud Storage בתהליך ההגדרה אימות.
הוספת ה-SDK של Cloud Storage לאפליקציה
בקובץ Gradle של המודול (ברמת האפליקציה) (בדרך כלל<project>/<app-module>/build.gradle.kts
או
<project>/<app-module>/build.gradle
),
מוסיפים את התלות בספריית Cloud Storage ל-Android. מומלץ להשתמש
Firebase Android BoM
כדי לשלוט בניהול גרסאות של ספריות.
dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.2.0")) // Add the dependency for the Cloud Storage library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-storage") }
כשמשתמשים ב-Firebase Android BoM, האפליקציה תמיד תשתמש בגרסאות תואמות של ספריות Firebase ל-Android.
(חלופה) מוסיפים יחסי תלות לספריות של Firebase בלי להשתמש ב-BoM
אם בוחרים לא להשתמש ב-Firebase BoM, צריך לציין את כל הגרסאות של ספריות Firebase בשורת התלות שלהן.
שימו לב: אם האפליקציה שלכם משתמשת במספר ספריות של Firebase, מומלץ מומלץ להשתמש בפקודה BoM כדי לנהל גרסאות של ספריות, וכך להבטיח שכל הגרסאות תואמת.
dependencies { // Add the dependency for the Cloud Storage library // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-storage:21.0.0") }
הגדר את Cloud Storage
השלב הראשון בגישה לקטגוריה Cloud Storage הוא ליצור
מופע של FirebaseStorage
:
Kotlin+KTX
storage = Firebase.storage
Java
FirebaseStorage storage = FirebaseStorage.getInstance();
הכול מוכן, אפשר להתחיל להשתמש ב-Cloud Storage
קודם נלמד איך ליצור Cloud Storage הפניה.
הגדרה מתקדמת
יש כמה תרחישים לדוגמה שדורשים הגדרה נוספת:
- שימוש ב-Cloud Storage קטגוריות ב- כמה אזורים גיאוגרפיים
- שימוש ב-Cloud Storage קטגוריות ב- סוגי אחסון (storage classes) שונים
- שימוש ב-Cloud Storage בקטגוריות עם מספר משתמשים מאומתים באותה האפליקציה
התרחיש לדוגמה הראשון הוא מושלם אם יש לכם משתמשים מכל העולם ואתם רוצים לאחסן את הנתונים שלהם בקרבתם. לדוגמה, אפשר ליצור קטגוריות בארה"ב, באירופה ובאסיה כדי לאחסן נתונים עבור המשתמשים באזורים האלה כדי לקצר את זמן האחזור.
התרחיש לדוגמה השני מועיל אם יש לכם נתונים עם דפוסי גישה שונים. לדוגמה: אפשר להגדיר קטגוריה בכמה אזורים או באזור מסוים לאחסון תמונות או תוכן אחר שנגיש בתדירות גבוהה, וקטגוריה לטווח קצר או לטווח ארוך לאחסון גיבויים של משתמשים או תוכן אחר שנגיש בתדירות נמוכה.
בכל אחד מהתרחישים האלה מומלץ להשתמש במספר קטגוריות של Cloud Storage.
התרחיש השלישי הוא שימושי אם אתם מפתחים אפליקציה כמו Google Drive, שמאפשרת למשתמשים להיכנס לכמה חשבונות (למשל, חשבון אישי וחשבון לצורכי עבודה). אפשר להשתמש במכונה מותאמת אישית של Firebase App כדי לאמת כל חשבון נוסף.
שימוש במספר קטגוריות של Cloud Storage
אם רוצים להשתמש בקטגוריה Cloud Storage שונה מברירת המחדל שצוינה למעלה, או להשתמש במספר קטגוריות Cloud Storage באפליקציה אחת, אפשר ליצור מופע של FirebaseStorage
שמפנה לקטגוריה בהתאמה אישית:
Kotlin+KTX
// Get a non-default Storage bucket val storage = Firebase.storage("gs://my-custom-bucket")
Java
// Get a non-default Storage bucket FirebaseStorage storage = FirebaseStorage.getInstance("gs://my-custom-bucket");
עבודה עם קטגוריות שיובאו
כשמייבאים קטגוריה קיימת של Cloud Storage ל-Firebase, צריך לתת ל-Firebase גישה לקבצים האלה באמצעות הכלי gsutil
, שנכלל ב-Google Cloud SDK:
gsutil -m acl ch -r -u service-<project number>@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://<your-cloud-storage-bucket>
תוכלו למצוא את מספר הפרויקט כמו שמתואר במבוא פרויקטים ב-Firebase.
הפעולה הזו לא משפיעה על קטגוריות חדשות שנוצרו, כי לקטגוריות האלה יש את גישת ברירת המחדל שהוגדר לאפשר ל-Firebase. זוהי פעולה זמנית שתתבצע באופן אוטומטי בעתיד.
שימוש באפליקציית Firebase בהתאמה אישית
אם מפתחים אפליקציה מורכבת יותר באמצעות FirebaseApp
בהתאמה אישית, אפשר
יוצרים מופע של FirebaseStorage
שאותחל עם אותה אפליקציה:
Kotlin+KTX
// Get the default bucket from a custom FirebaseApp val storage = Firebase.storage(customApp!!) // Get a non-default bucket from a custom FirebaseApp val customStorage = Firebase.storage(customApp, "gs://my-custom-bucket")
Java
// Get the default bucket from a custom FirebaseApp FirebaseStorage storage = FirebaseStorage.getInstance(customApp); // Get a non-default bucket from a custom FirebaseApp FirebaseStorage customStorage = FirebaseStorage.getInstance(customApp, "gs://my-custom-bucket");
השלבים הבאים
הכנה להשקת האפליקציה:
מפעילים את App Check כדי לוודא שרק האפליקציות שלכם יכולות לגשת לקטגוריות האחסון.
הגדרת תקציב התראות לפרויקט שלך במסוף Google Cloud.
מעקב אחר שימוש וחיוב מרכז הבקרה במסוף Firebase כדי לקבל תמונה כללית של ביצועי הפרויקט בשימוש במספר שירותי Firebase. אפשר גם להיכנס אל Cloud Storage שימוש מרכז הבקרה מידע מפורט על השימוש.
לעיין ברשימת המשימות להשקה של Firebase.