בדף הזה מופיעות סקירות כלליות קצרות של כמה מושגים חשובים לגבי פרויקטים ב-Firebase. אם יש קישורים, כדאי ללחוץ עליהם כדי לקבל מידע מפורט יותר על התכונות, השירותים, הכלים והשיטות המומלצות.
הקשר בין פרויקטים, אפליקציות ומוצרים של Firebase
פרויקט Firebase הוא הישות ברמה העליונה ב-Firebase. בפרויקט, אתם יכולים לרשום את האפליקציות שלכם ל-Apple, ל-Android או לאינטרנט. אחרי שרושמים את האפליקציות ב-Firebase, אפשר להוסיף את ערכות ה-SDK של Firebase לכל מספר של מוצרי Firebase, כמו Analytics, Cloud Firestore, Performance Monitoring או Remote Config.
במדריך לתחילת העבודה בפלטפורמה שלכם תוכלו לקבל מידע מפורט יותר על התהליך הזה:
iOS+ | Android |
אינטרנט | Unity | C++ |
Flutter.
הסבר על ההיררכיה של פרויקטים ב-Firebase
בתרשים הזה מוצגת ההיררכיה הבסיסית של פרויקט Firebase. אלה הקשרים העיקריים:
פרויקט Firebase הוא כמו מאגר לכל האפליקציות שלכם ולכל המשאבים והשירותים שהוקצו לפרויקט.
פרויקט Firebase יכול לכלול אפליקציה אחת או יותר של Firebase שרשומות בו (לדוגמה, גם הגרסה ל-iOS וגם הגרסה ל-Android של אפליקציה מסוימת, או גם הגרסה החינמית וגם הגרסה בתשלום של אפליקציה מסוימת).
כל האפליקציות ב-Firebase שרשומות באותו פרויקט ב-Firebase משתפות את כל אותם משאבים ושירותים שהוקצו לפרויקט ויש להן גישה אליהם. הנה כמה דוגמאות:
כל האפליקציות ב-Firebase שרשומות לאותו פרויקט ב-Firebase חולקות את אותם שרתי קצה עורפיים, כמו Firebase Hosting, Authentication, Realtime Database, Cloud Firestore, Cloud Storage ו-Cloud Functions.
כל האפליקציות ב-Firebase שרשומות באותו פרויקט ב-Firebase משויכות לאותו נכס ב-Google Analytics, כאשר כל אפליקציה ב-Firebase היא מקור נתונים נפרד באותו נכס.
הקשר בין פרויקטים ב-Firebase לבין Google Cloud
כשיוצרים פרויקט חדש ב-Firebase, בעצם יוצרים פרויקט Google Cloud מאחורי הקלעים. אפשר גם ליצור קודם Google Cloudפרויקט, ואז להוסיף את Firebase לפרויקט מאוחר יותר. אפשר לחשוב על Google Cloudפרויקט כעל מאגר וירטואלי של נתונים, קוד, הגדרות ושירותים.
שימו לב שבכל הפרויקטים ב-Firebase, מערכת Firebase מוסיפה באופן אוטומטי תווית של
firebase:enabled בדף
Labels
של הפרויקט במסוף Google Cloud. מידע נוסף על התווית הזו זמין בשאלות הנפוצות.
מכיוון שפרויקט Firebase הוא פרויקט Google Cloud:
אתם יכולים לגשת לפרויקט ולבצע בו פעולות בFirebase מסוף וגם במסוףGoogle Cloud ובGoogle APIs Console.
אפשר ליצור אינטראקציה עם הפרויקט באמצעות Firebase CLI, gcloud CLI וכל משאב Terraform מ-Google.
אתם יכולים להשתמש במוצרים ובממשקי API גם מ-Firebase וגם מ-Google Cloud בפרויקט.
ההרשאות והתפקידים ב-IAM בפרויקט משותפים בין Firebase לבין Google Cloud. כל גישה שיש למשתמש בפרויקט (כלומר, לגורם ראשי) לפרויקט Google Cloud תחול גם על פרויקט Firebase (ולהפך).
החיוב על הפרויקט משותף בין Firebase לבין Google Cloud. אם החיוב מופעל בפרויקט Google Cloud, הפרויקט ב-Firebase יהיה בתוכנית Blaze בתשלום לפי שימוש של Firebase.
מזהים ייחודיים של הפרויקט (כמו מספר הפרויקט ומזהה הפרויקט) משותפים ל-Firebase ול-Google Cloud.
כל היררכיית משאבים שחלה על פרויקט Google Cloud (לדוגמה, ארגון, תיקיות וכו') תחול גם על פרויקט Firebase.
מחיקת הפרויקט תגרום למחיקה שלו ב-Firebase וב-Google Cloud.
מחיקה או שינוי של משאב או נתונים בפרויקט חלים על Firebase ועל Google Cloud.
הגדרה של פרויקט Firebase ורישום אפליקציות
אפשר להגדיר פרויקט Firebase ולרשום אפליקציות במסוף Firebase (או, לתרחישי שימוש מתקדמים, באמצעות Firebase Management API בארכיטקטורת REST או Firebase CLI). כשמגדירים פרויקט ורושמים אפליקציות, צריך לקבל כמה החלטות ארגוניות ולהוסיף לפרויקטים המקומיים פרטי הגדרה ספציפיים ל-Firebase.
באפליקציות בסביבת הייצור, צריך להגדיר תהליך עבודה ברור לפיתוח, שבדרך כלל כולל שימוש בכמה סביבות. כדי ליצור את תהליך העבודה לפיתוח, מומלץ לעיין במסמכים שלנו בנושא תהליכי עבודה למפתחים, כולל שיטות מומלצות כלליות והנחיות כלליות לאבטחה להגדרת פרויקטים ב-Firebase ולרישום אפליקציות.
איך מתקשרים עם פרויקט Firebase
בנוסף לערכות ה-SDK של המוצרים, אתם יכולים ליצור אינטראקציה ישירה עם פרויקט Firebase באמצעות כמה כלים וממשקים שונים.
מסוף Firebase
מסוף Firebase הוא הסביבה הכי עשירה לניהול מוצרים, אפליקציות והגדרות ברמת הפרויקט ב-Firebase.
בחלונית הימנית של המסוף מופיעה רשימה של מוצרי Firebase, שמסודרים לפי קטגוריות ברמה העליונה. בחלק העליון של החלונית הימנית, לוחצים על כדי לגשת להגדרות של פרויקט. ההגדרות של פרויקט כוללות שילובים, הרשאות גישה וחיוב.
באמצע המסוף מוצגים לחצנים להפעלת תהליכי עבודה להגדרה, כדי לרשום סוגים שונים של אפליקציות. אחרי שתתחילו להשתמש ב-Firebase, האזור הראשי במסוף ישתנה ללוח בקרה שבו מוצגים נתונים סטטיסטיים על המוצרים שבהם אתם משתמשים.
שימו לב: פרויקט Firebase הוא גם פרויקט Google Cloud, ולכן יכול להיות שתצטרכו להשתמש במסוף Google Cloud במקום במסוף Firebase כדי לבצע משימות שונות או להשתמש במוצרים שונים.
Firebase CLI (כלי שורת פקודה)
בנוסף, Firebase מציע את Firebase CLI להגדרה ולניהול של מוצרי Firebase ספציפיים, כמו Firebase Hosting, Cloud Functions for Firebase ו-Firebase Extensions.
אחרי שמתקינים את ה-CLI, יש לכם גישה לפקודה הגלובלית firebase. משתמשים בממשק שורת הפקודה כדי לקשר את ספריית האפליקציה המקומית לפרויקט Firebase, ואז פורסים גרסאות חדשות של תוכן שמתארח ב-Firebase או עדכונים לפונקציות.
Firebase Management REST API
באמצעות Firebase Management API בארכיטקטורת REST, אפשר לנהל פרויקט Firebase באופן פרוגרמטי. לדוגמה, אפשר לרשום אפליקציה בפרויקט באופן פרוגרמטי או להציג רשימה של האפליקציות שכבר רשומות (iOS+ | Android | אינטרנט).
מזהים של פרויקטים ב-Firebase
אפשר לזהות פרויקט Firebase בקצה העורפי של Firebase ובממשקי מפתחים שונים באמצעות מזהים שונים, כולל שם הפרויקט, מספר הפרויקט ומזהה הפרויקט.
שם הפרויקט
כשיוצרים פרויקט, מציינים שם פרויקט. המזהה הזה הוא השם הפנימי בלבד של פרויקט במסוף Firebase, במסוף Google Cloud ובCLI של Firebase. שם הפרויקט לא מוצג ב-Firebase או במוצר, בשירות או במשאב של Google Cloud שגלויים לציבור. הוא נועד רק לעזור לכם להבחין בקלות בין כמה פרויקטים.
אפשר לערוך את שם הפרויקט בכל שלב ב הגדרות הפרויקט במסוף Firebase. שם הפרויקט מוצג בחלונית העליונה.
מספר הפרויקט
לפרויקט Firebase (ולפרויקט Google Cloud המשויך) יש מספר פרויקט. זהו מזהה קנוני ייחודי גלובלי של הפרויקט ש-Google מקצה. משתמשים במזהה הזה כשמגדירים שילובים או כשמבצעים קריאות ל-API של Firebase, של Google או של שירותים של צד שלישי.
אי אפשר לערוך את מספר הפרויקט. אם מוחקים פרויקט, גם מספר הפרויקט נמחק ואי אפשר להשתמש בו יותר בשום פרויקט אחר.
מזהה הפרויקט
לפרויקט Firebase (ולפרויקט Google Cloud המשויך אליו) יש מזהה פרויקט. זהו מזהה ייחודי שהמשתמש מגדיר לפרויקט בכל השירותים של Firebase ו-Google Cloud. כשיוצרים פרויקט ב-Firebase, המערכת מקצה לו באופן אוטומטי מזהה ייחודי, אבל אפשר לערוך אותו במהלך הגדרת הפרויקט. בדרך כלל, המזהה הזה משמש ככינוי נוח להפניה לפרויקט.
אובייקטים וקבצים של תצורת Firebase
כשרושמים אפליקציה בפרויקט Firebase, Firebaseמסוף Firebase מספק קובץ תצורה של Firebase (אפליקציות ל-Apple או ל-Android) או אובייקט תצורה (אפליקציות לאינטרנט) שמוסיפים ישירות לספרייה המקומית של האפליקציה.
- באפליקציות של אפל, מוסיפים
GoogleService-Info.plistקובץ הגדרה. - באפליקציות ל-Android, מוסיפים
google-services.jsonקובץ תצורה. - באפליקציות אינטרנט, מוסיפים אובייקט הגדרה של Firebase.
בכל שלב אפשר לקבל קובץ תצורה או אובייקט של Firebase של אפליקציה.
קובץ או אובייקט הגדרה של Firebase משייך אפליקציה לפרויקט ספציפי ב-Firebase ולמשאבים שלו (מסדי נתונים, מאגרי אחסון וכו'). ההגדרה כוללת את 'אפשרויות Firebase', שהן פרמטרים שנדרשים על ידי Firebase ושירותי Google כדי לתקשר עם Firebase Server APIs ולשייך נתוני לקוח לפרויקט Firebase ולאפליקציית Firebase. אלה הן 'אפשרויות Firebase' שנדרשות לפחות:
מפתח API: מחרוזת מוצפנת פשוטה שמשמשת לקריאה ל-API מסוים שלא דורש גישה לנתוני משתמש פרטיים (ערך לדוגמה:
AIzaSyDOCAbC123dEf456GhI789jKl012-MnO)מזהה הפרויקט: מזהה ייחודי שהמשתמש מגדיר לפרויקט בכל Firebase וב-Google Cloud. המזהה הזה עשוי להופיע בכתובות URL או בשמות של חלק מהמשאבים ב-Firebase, אבל בדרך כלל צריך להתייחס אליו כאל כינוי נוח להפניה לפרויקט. (ערך לדוגמה:
myapp-project-123)מזהה האפליקציה (AppID): המזהה הייחודי של האפליקציה ב-Firebase בכל מוצרי Firebase, בפורמט שספציפי לפלטפורמה:
- אפליקציות של Firebase ל-Apple:
GOOGLE_APP_ID(ערך לדוגמה:1:1234567890:ios:321abc456def7890)
זה לא מזהה חבילה של Apple. - אפליקציות Firebase ל-Android:
mobilesdk_app_id(ערך לדוגמה:1:1234567890:android:321abc456def7890)
זה לא שם חבילה ל-Android או מזהה אפליקציה ל-Android. - אפליקציות Firebase לאינטרנט:
appId(ערך לדוגמה:1:65211879909:web:3ae38ef1cdcb2e01fe5f0c)
- אפליקציות של Firebase ל-Apple:
התוכן של קובץ התצורה או האובייקט של Firebase נחשב לציבורי, כולל המזהה של האפליקציה שספציפי לפלטפורמה (מזהה חבילה של אפל או שם חבילה של Android) והערכים שספציפיים לפרויקט ב-Firebase, כמו מפתח ה-API, מזהה הפרויקט, כתובת ה-URL של Realtime Database ושם מאגר Cloud Storage. לכן, כדאי להשתמש ב-Firebase Security Rules כדי להגן על הנתונים והקבצים ב-Realtime Database, Cloud Firestore וב-Cloud Storage.
בדרך כלל לא מומלץ לכלול קובץ או אובייקט הגדרות של Firebase בפרויקטים עם קוד פתוח בבקרת מקורות, כי ברוב המקרים המשתמשים צריכים ליצור פרויקטים משלהם ב-Firebase ולהפנות את האפליקציות שלהם למשאבים שלהם ב-Firebase (באמצעות קובץ או אובייקט הגדרות משלהם ב-Firebase).
מגבלות כלליות על פרויקטים, אפליקציות ואתרים ב-Firebase
אלה כמה מגבלות כלליות לגבי פרויקטים, אפליקציות ואתרים ב-Firebase:
מספר הפרויקטים לכל חשבון Google (כתובת אימייל)
- תוכנית Spark בתשלום קבוע: המכסה ליצירת פרויקטים מוגבל למספר קטן של פרויקטים (בדרך כלל בסביבות 5-10).
- תוכנית Blaze בתשלום לפי שימוש: המכסה ליצירת פרויקטים עדיין מוגבלת, אבל יכול להיות שהיא תגדל אם תקשרו חשבון Cloud Billing בניהול תקין.
חשוב לדעת את הפרטים הבאים לגבי המכסה ליצירת פרויקטים:
- ההגבלה הזו לא ספציפית ל-Firebase. המגבלות של Firebase על מכסת הפרויקטים זהות למגבלות של Google Cloud.
- במקרים נדירים שבהם יש צורך בכך, אפשר לבקש הגדלה של מכסת הפרויקט.
- מחיקה מלאה של פרויקט נמשכת 30 ימים, והיא נספרת במכסת הפרויקטים עד שהפרויקט נמחק באופן מלא.
מומלץ לעיין בשיטות המומלצות הכלליות להגדרת פרויקטים ב-Firebase.
מספר האפליקציות בכל פרויקט
ב-Firebase יש מגבלה של 30 אפליקציות Firebase לכל פרויקט Firebase.
חשוב לוודא שכל האפליקציות ב-Firebase בפרויקט Firebase יחיד הן וריאציות של אותה אפליקציה מבחינת משתמש הקצה. מידע נוסף על ריבוי דיירים זמין במסמכי השיטות המומלצות שלנו.
במאמר השאלות הנפוצות אפשר לקרוא מידע נוסף על המגבלה על מספר האפליקציות בכל פרויקט.
מספר האתרים Hosting בכל פרויקט
Firebase Hosting התכונה 'אתרים מרובים' תומכת בעד 36 אתרים לכל פרויקט.
הפעלת האפליקציה
- מגדירים התראות על תקציב לפרויקט במסוף Google Cloud.
- כדי לקבל תמונה כוללת של השימוש בפרויקט בשירותי Firebase שונים, אפשר לעקוב אחרי לוח הבקרה 'שימוש וחיוב' במסוף Firebase.
- כדאי לעיין ברשימת המשימות להשקה ב-Firebase.