התחל עם אחסון בענן בפלטפורמות של Apple

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

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

  1. התקן את Firebase SDK .
  2. הוסף את האפליקציה שלך לפרויקט Firebase שלך ​​במסוף Firebase .

צור דלי ברירת מחדל של 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 מוגבלת כך שרק משתמשים מאומתים יכולים לקרוא או לכתוב נתונים. כדי להתחיל מבלי להגדיר אימות , תוכל להגדיר את הכללים שלך לגישה ציבורית .

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

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

השתמש ב- Swift Package Manager כדי להתקין ולנהל תלות ב-Firebase.

  1. ב-Xcode, כשפרויקט האפליקציה שלך פתוח, נווט אל קובץ > הוסף חבילות .
  2. כשתתבקש, הוסף את מאגר Firebase Apple platforms SDK:
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. בחר את ספריית Cloud Storage.
  5. הוסף את הדגל -ObjC לקטע Other Linker Flags של הגדרות הבנייה של היעד שלך.
  6. בסיום, Xcode יתחיל באופן אוטומטי לפתור ולהוריד את התלות שלך ברקע.

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

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

  1. ייבא את מודול FirebaseCore ב- UIApplicationDelegate שלך, כמו גם כל מודולי Firebase אחרים שנציג האפליקציה שלך משתמש בו. לדוגמה, כדי להשתמש ב-Cloud Firestore ובאימות:

    SwiftUI

    import SwiftUI
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    מָהִיר

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Objective-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. הגדר מופע משותף FirebaseApp בשיטת application(_:didFinishLaunchingWithOptions:) של נציג האפליקציה שלך:

    SwiftUI

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    מָהִיר

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Objective-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. אם אתה משתמש ב- 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()
          }
        }
      }
    }
          
  4. קבל הפניה לשירות Cloud Storage, באמצעות אפליקציית Firebase המוגדרת כברירת מחדל:

    מָהִיר

    let storage = Storage.storage()
    

    Objective-C

    FIRStorage *storage = [FIRStorage storage];
    

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

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

התקנה מתקדמת

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

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

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

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

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

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

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

מָהִיר

// 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 שאותחל עם אותה אפליקציה:

מָהִיר

// 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"];
    

הצעדים הבאים