תחילת העבודה עם Cloud Storage ל-Unity

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

לפני שמתחילים

לפני שמשתמשים Cloud Storage צריך:

  • רושמים את הפרויקט ב-Unity ומגדירים אותו לשימוש ב-Firebase.

    • אם בפרויקט ב-Unity כבר נעשה שימוש ב-Firebase, הוא כבר משתמש ב-Firebase רשומה והוגדרה ל-Firebase.

    • אם אין לכם פרויקט ב-Unity, תוכלו להוריד אפליקציה לדוגמה.

  • מוסיפים את ה-SDK Firebase Unity (באופן ספציפי, FirebaseStorage.unitypackage) אל בפרויקט ב-Unity.

חשוב לזכור שהוספת Firebase לפרויקט ב-Unity כוללת משימות גם במסוף Firebase וגם בפרויקט הפתוח ב-Unity (לדוגמה, מורידים קובצי תצורה של Firebase מהמסוף ומעבירים אותם לפרויקט ב-Unity).

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

  1. בחלונית הניווט של מסוף Firebase, לוחצים על Storage, ולוחצים על Get started (תחילת העבודה).

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

  3. צריך לבחור מיקום להגדרת ברירת המחדל קטגוריה Cloud Storage.

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

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

    אם את/ה בתוכנית Blaze, יש לך אפשרות ליצור מספר קטגוריות, לכל אחת מהן location.

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

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

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

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

גישה לכיתה FirebaseStorage

Firebase.Storage.FirebaseStorage היא נקודת הכניסה ל-Cloud Storage Unity SDK.

// Get a reference to the storage service, using the default Firebase App
FirebaseStorage storage = FirebaseStorage.DefaultInstance;

הכול מוכן, אפשר להתחיל להשתמש ב-Cloud Storage

קודם נלמד איך יוצרים הפניה מסוג Cloud Storage.

הגדרה מתקדמת

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

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

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

בשני תרחישים לדוגמה האלה, כדאי להשתמש בכמה קטגוריות Cloud Storage.

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

שימוש במספר קטגוריות של Cloud Storage

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

// Get a non-default Storage bucket
var 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 שאותחל עם app:

// Get the default bucket from a custom FirebaseApp
FirebaseStorage storage = FirebaseStorage.GetInstance(customApp);

// Get a non-default bucket from a custom FirebaseApp
FirebaseStorage storageCustom = FirebaseStorage.GetInstance(customApp, "gs://my-custom-bucket");

השלבים הבאים