Cloud Storage for Firebase מאפשרת להעלות ולשתף תוכן שנוצר על ידי משתמשים, כמו תמונות וסרטונים, וכך להוסיף תוכן של מדיה עשירה לאפליקציות. הנתונים שלך מאוחסנים קטגוריה Google Cloud Storage — פתרון לאחסון אובייקטים בקנה מידה של exabyte עם זמינות גבוהה וגלובלי יתירות. באמצעות Cloud Storage for Firebase אפשר להעלות את הקבצים האלה באופן מאובטח ישירות ממכשירים ניידים ומדפדפני אינטרנט, מטפלים ברשתות בעייתיות עם קלה.
דרישות מוקדמות
- מתקינים את Firebase SDK.
- מוסיפים את האפליקציה לפרויקט Firebase במסוף Firebase.
יצירת קטגוריית ברירת מחדל של 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 בתהליך ההגדרה אימות.
הוספה של Cloud Storage לאפליקציה
שימוש ב-Swift Package Manager כדי להתקין ולנהל יחסי תלות של Firebase.
- ב-Xcode, כשפרויקט האפליקציה פתוח, עוברים אל File > (קובץ >) הוספת חבילות.
- כשמופיעה בקשה, מוסיפים את המאגר של Firebase SDK לפלטפורמות של Apple:
- בוחרים את הספרייה Cloud Storage.
- מוסיפים את הדגל
-ObjC
לקטע סימונים של מקשר אחר בהגדרות ה-build של היעד. - בסיום, Xcode יתחיל לפתור את יחסי התלות ולהוריד אותם באופן אוטומטי ברקע.
https://github.com/firebase/firebase-ios-sdk.git
הגדר את Cloud Storage
עליך להפעיל את Firebase לפני יצירת קובצי עזר של Firebase, או בשימוש. אם כבר עשיתם זאת לתכונה אחרת של Firebase, תוכלו לדלג על השלב הזה.
- מייבאים את המודול
FirebaseCore
UIApplicationDelegate
, וגם כל פלטפורמה אחרת מודולים של Firebase שמשתמשים אחרים מעניקים דרך האפליקציה גישה. לדוגמה, כדי להשתמש ב-Cloud Firestore וב-Authentication:SwiftUI
import SwiftUI import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Swift
import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Objective-C
@import FirebaseCore; @import FirebaseFirestore; @import FirebaseAuth; // ...
- הגדרה של
FirebaseApp
במופע משותף של האפליקציה שיטתapplication(_:didFinishLaunchingWithOptions:)
:SwiftUI
// Use Firebase library to configure APIs FirebaseApp.configure()
Swift
// Use Firebase library to configure APIs FirebaseApp.configure()
Objective-C
// Use Firebase library to configure APIs [FIRApp configure];
- אם אתה משתמש ב-SwiftUI, עליך ליצור נציג מורשה לאפליקציה ולצרף אותו
למבנה
App
שלך דרךUIApplicationDelegateAdaptor
אוNSApplicationDelegateAdaptor
. צריך גם להשבית את האפשרות להענקת גישה לאפליקציה. מידע נוסף זמין בהוראות ל-SwiftUI.SwiftUI
@main struct YourApp: App { // register app delegate for Firebase setup @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }
-
מקבלים הפניה לשירות Cloud Storage באמצעות אפליקציית Firebase שמוגדרת כברירת מחדל:
Swift
let storage = Storage.storage()
Objective-C
FIRStorage *storage = [FIRStorage storage];
הכול מוכן, אפשר להתחיל להשתמש ב-Cloud Storage
קודם נלמד איך ליצור Cloud Storage הפניה.
הגדרה מתקדמת
יש כמה תרחישים לדוגמה שמחייבים הגדרה נוספת:
- שימוש ב-Cloud Storage קטגוריות ב- כמה אזורים גיאוגרפיים
- שימוש ב-Cloud Storage קטגוריות ב- סוגי אחסון (storage classes) שונים
- שימוש ב-Cloud Storage בקטגוריות עם מספר משתמשים מאומתים באותה האפליקציה
התרחיש לדוגמה הראשון הוא מושלם אם יש לכם משתמשים מכל העולם ואתם רוצים לאחסן את הנתונים שלהם בקרבתם. לדוגמה, אפשר ליצור קטגוריות בארה"ב, באירופה ובאסיה כדי לאחסן נתונים עבור המשתמשים באזורים האלה כדי לקצר את זמן האחזור.
התרחיש לדוגמה השני מועיל אם יש לכם נתונים עם דפוסי גישה שונים. לדוגמה: אפשר להגדיר קטגוריה רב-אזורית או אזורית שמאחסנת תמונות או תוכן אחר שניגשים אליו לעיתים קרובות, וקטגוריה של קו ברשימת מוקדים או מוקד חירום שמאחסן גיבויים של משתמשים או תוכן אחר שניגשים אליו לעתים רחוקות.
בכל אחד מהתרחישים האלה מומלץ להשתמש במספר קטגוריות של Cloud Storage.
התרחיש השלישי יכול להיות שימושי אם אתם מפתחים אפליקציה כמו Google Drive, שמאפשרת למשתמשים להיכנס לכמה חשבונות (למשל, חשבון אישי וחשבון לצורכי עבודה). אפשר להשתמש באפליקציית Firebase בהתאמה אישית כדי לאמת כל חשבון נוסף.
שימוש בכמה קטגוריות Cloud Storage
אם רוצים להשתמש בקטגוריה Cloud Storage שונה מברירת המחדל שצוינה למעלה, או להשתמש במספר קטגוריות Cloud Storage באפליקציה אחת, אפשר ליצור מופע של FIRStorage
שמפנה לקטגוריה בהתאמה אישית:
Swift
// Get a non-default Cloud Storage bucket storage = Storage.storage(url:"gs://my-custom-bucket")
Objective-C
// Get a non-default Cloud Storage bucket FIRStorage storage = [FIRStorage storageWithURL:@"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
בהתאמה אישית, אפשר
יוצרים מופע של Storage
שאותחל עם אותה אפליקציה:
Swift
// Get the default bucket from a custom FirebaseApp storage = Storage.storage(app:customApp) // Get a non-default bucket from a custom FirebaseApp storage = Storage.storage(app:customApp, url:"gs://my-custom-bucket")
Objective-C
// Get the default bucket from a custom FIRApp FIRStorage storage = [FIRStorage storageForApp:customApp]; // Get a non-default bucket from a custom FIRApp FIRStorage storage = [FIRStorage storageForApp:customApp withURL:@"gs://my-custom-bucket"];
השלבים הבאים
מכינים את האפליקציה להשקת האפליקציה:
מפעילים את App Check כדי לוודא שרק האפליקציות שלכם יכולות לגשת לקטגוריות האחסון.
מגדירים התראות תקציב לפרויקט במסוף Google Cloud.
מעקב אחר שימוש וחיוב מרכז הבקרה במסוף Firebase כדי לקבל תמונה כללית של ביצועי הפרויקט בשימוש במספר שירותי Firebase. אפשר גם להיכנס אל Cloud Storage שימוש מרכז הבקרה מידע מפורט על השימוש.
לעיין ברשימת המשימות להשקה של Firebase.