התחל עם Cloud Storage ב-Flutter

Cloud Storage for Firebase מאפשר לך להעלות ולשתף תוכן שנוצר על ידי משתמשים, כגון תמונות ווידאו, מה שמאפשר לך לבנות תוכן מדיה עשירה באפליקציות שלך. הנתונים שלך מאוחסנים בדלי של Google Cloud Storage - פתרון אחסון אובייקטים בקנה מידה של אקסבייטים עם זמינות גבוהה ויתירות גלובלית. Cloud Storage for Firebase מאפשר לך להעלות בצורה מאובטחת קבצים אלה ישירות ממכשירים ניידים ומדפדפני אינטרנט, תוך טיפול בקלות ברשתות נקודתיות.

דרישות מוקדמות

התקן ואתחל את ערכות ה-SDK של Firebase עבור Flutter אם עדיין לא עשית זאת.

צור דלי ברירת מחדל של Cloud Storage

  1. מחלונית הניווט של מסוף Firebase , בחר אחסון ולאחר מכן לחץ על התחל .

  2. עיין בהודעות על אבטחת נתוני Cloud Storage שלך ​​באמצעות כללי אבטחה. במהלך הפיתוח, שקול להגדיר את הכללים שלך לגישה ציבורית .

  3. בחר מיקום עבור דלי ברירת המחדל של Cloud Storage.

    • הגדרת מיקום זו היא מיקום המשאב המוגדר כברירת מחדל של הפרויקט שלך ב-Google Cloud Platform (GCP) . שים לב שמיקום זה ישמש עבור שירותי GCP בפרויקט שלך הדורשים הגדרת מיקום, במיוחד מסד הנתונים שלך ב- Cloud Firestore ואפליקציית App Engine שלך ​​(שנדרשת אם אתה משתמש ב-Cloud Scheduler).

    • אם אינך יכול לבחור מיקום, אז לפרויקט שלך כבר יש מיקום ברירת מחדל של משאב GCP. הוא הוגדר במהלך יצירת הפרויקט או בעת הגדרת שירות אחר הדורש הגדרת מיקום.

    אם אתה בתוכנית Blaze, אתה יכול ליצור דליים מרובים , לכל אחד מיקום משלו.

  4. לחץ על סיום .

הגדר גישה ציבורית

Cloud Storage for Firebase מספק שפת חוקים הצהרתית המאפשרת לך להגדיר כיצד הנתונים שלך צריכים להיות מובנים, כיצד יש להוסיף אותם לאינדקס ומתי ניתן לקרוא את הנתונים שלך ולכתוב אליהם. כברירת מחדל, גישת קריאה וכתיבה ל-Cloud Storage מוגבלת כך שרק משתמשים מאומתים יכולים לקרוא או לכתוב נתונים. כדי להתחיל מבלי להגדיר אימות Firebase , תוכל להגדיר את הכללים שלך לגישה ציבורית .

זה אכן הופך את אחסון הענן פתוח לכל אחד, אפילו לאנשים שאינם משתמשים באפליקציה שלך, אז הקפד להגביל שוב את אחסון הענן שלך כשאתה מגדיר אימות.

הוסף את Cloud Storage SDK לאפליקציה שלך

  1. מהשורש של פרויקט Flutter שלך, הפעל את הפקודה הבאה כדי להתקין את הפלאגין:

    flutter pub add firebase_storage
    
  2. לאחר השלמתו, בנה מחדש את אפליקציית Flutter שלך:

    flutter run
    
  3. ייבא את הפלאגין בקוד Dart שלך:

    import 'package:firebase_storage/firebase_storage.dart';
    

הגדר אחסון בענן

הצעד הראשון בגישה לדלי של Cloud Storage שלך ​​הוא יצירת מופע של FirebaseStorage :

final storage = FirebaseStorage.instance;

אתה מוכן להתחיל להשתמש ב-Cloud Storage!

ראשית, נלמד כיצד ליצור הפניה ל-Cloud Storage .

התקנה מתקדמת

ישנם כמה מקרי שימוש הדורשים הגדרה נוספת:

מקרה השימוש הראשון מושלם אם יש לך משתמשים ברחבי העולם, ואתה רוצה לאחסן את הנתונים שלהם בקרבתם. לדוגמה, אתה יכול ליצור דליים בארה"ב, אירופה ואסיה כדי לאחסן נתונים עבור משתמשים באזורים אלה כדי להפחית את זמן האחזור.

מקרה השימוש השני מועיל אם יש לך נתונים עם דפוסי גישה שונים. לדוגמה: אתה יכול להגדיר דלי רב-אזורי או אזורי המאחסן תמונות או תוכן אחר הנגיש לעתים תכופות, ו-nearline או דלי קולד המאחסן גיבויים של משתמשים או תוכן אחר שנגיש לעתים רחוקות.

בכל אחד ממקרי השימוש הללו, תרצה להשתמש במספר דליים של Cloud Storage .

מקרה השימוש השלישי שימושי אם אתה בונה אפליקציה, כמו Google Drive, המאפשרת למשתמשים לנהל מספר חשבונות מחוברים (לדוגמה, חשבון אישי וחשבון עבודה). אתה יכול להשתמש במופע מותאם אישית של אפליקציית Firebase כדי לאמת כל חשבון נוסף.

השתמש במספר דליים של Cloud Storage

אם אתה רוצה להשתמש בדלי של Cloud Storage שאינו ברירת המחדל שצוינה למעלה, או להשתמש במספר דליים של Cloud Storage באפליקציה אחת, תוכל ליצור מופע של FirebaseStorage שמתייחס לדלי המותאם אישית שלך:

// Get a non-default Storage bucket
final storage = FirebaseStorage.instanceFor(bucket: "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 שאותחל עם אותה אפליקציה:

// Use a non-default App
final storage = FirebaseStorage.instanceFor(app: customApp);

הצעדים הבאים