ב-Firebase Realtime Database, הנתונים מאוחסנים ומסונכרנים באמצעות מסד נתונים בענן מסוג NoSQL. הנתונים מסונכרנים עם כל הלקוחות בזמן אמת, ונשארים זמינים גם כשהאפליקציה עוברת למצב אופליין.
לפני שתתחיל
כדי להשתמש ב-Firebase Realtime Database, צריך:
רושמים את פרויקט C++ ומגדירים אותו לשימוש ב-Firebase.
אם בפרויקט C++ שלכם כבר נעשה שימוש ב-Firebase, הוא כבר רשום ומוגדר לשימוש ב-Firebase.
מוסיפים את Firebase C++ SDK לפרויקט C++.
שימו לב שהוספת Firebase לפרויקט C++ כוללת משימות במסוף Firebase ובפרויקט C++ הפתוח (לדוגמה, הורדה של קובצי תצורה של Firebase מהמסוף והעברה שלהם לפרויקט C++).
יצירת מסד נתונים
עוברים לקטע Realtime Database במסוף Firebase. תתבקשו לבחור פרויקט קיים ב-Firebase. פועלים לפי תהליך העבודה ליצירת מסד נתונים.
בוחרים מצב התחלתי ל-Firebase Security Rules:
- מצב בדיקה
החשבון הזה מתאים להתחלת העבודה עם ספריות לקוח לנייד ולאינטרנט, אבל כל אחד יכול לקרוא ולשכתב את הנתונים שלכם. אחרי הבדיקה, חשוב לעיין בקטע הסבר על כללי Firebase Realtime Database.
כדי להתחיל להשתמש ב-SDK לאתרים, ל-Apple או ל-Android, בוחרים באפשרות testmode.
- מצב נעילה
דחיית כל פעולות הקריאה והכתיבה מלקוחות ניידים ומלקוחות אינטרנט. שרתי האפליקציות המאומתים שלכם עדיין יכולים לגשת למסד הנתונים.
בוחרים מיקום למסד הנתונים.
בהתאם למיקום של מסד הנתונים, כתובת ה-URL של מסד הנתונים החדש תהיה באחד מהפורמטים הבאים:
(למסדי נתונים ב-DATABASE_NAME.firebaseio.com
us-central1
) (למסדי נתונים בכל המיקומים האחרים)DATABASE_NAME.REGION.firebasedatabase.app
לוחצים על סיום.
כשמפעילים את Realtime Database, מערכת Cloud API Manager מפעילה גם את ה-API.
יצירה ואתחול של firebase::App
כדי לגשת אל Realtime Database, צריך ליצור את firebase::App
ולאתחל אותו.
כוללים את קובץ הכותרת של firebase::App
:
#include "firebase/app.h"
יוצרים את firebase::App
, ומעבירים את סביבת ה-JNI ואת ההפניה jobject
לפעילות ב-Java כארגומנטים:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);
יוצרים את firebase::App
:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));
גישה למחלקה firebase::database::Database
firebase::database::Database
הוא נקודת הכניסה ל-Firebase Realtime Database C++ SDK.
::firebase::database::Database *database = ::firebase::database::Database::GetInstance(app);
אם בחרתם להשתמש בגישה ציבורית לכללים, תוכלו להמשיך לקטעים בנושא שמירה ואחזור של נתונים.
הגדרת גישה מוגבלת
אם לא רוצים להשתמש בגישה ציבורית, אפשר להוסיף Firebase Authentication לאפליקציה כדי לשלוט בגישה למסד הנתונים.
השלבים הבאים
כך מעצבים נתונים בשביל Realtime Database.
הכנות להשקת האפליקציה:
- מגדירים התראות על תקציב לפרויקט במסוף Google Cloud.
- כדי לקבל תמונה כוללת של השימוש בפרויקט בכמה שירותי Firebase, אפשר לעקוב אחרי לוח הבקרה של השימוש והחיוב במסוף Firebase. אפשר גם להיכנס לRealtime Database לוח הבקרה 'שימוש' כדי לקבל מידע מפורט יותר על השימוש.
- עיון ברשימת המשימות להשקה של Firebase.
בעיות ידועות
- בפלטפורמות למחשבים (Windows, Mac, Linux), Firebase C++ SDK משתמש ב-REST כדי לגשת למסד הנתונים שלכם. לכן, אתם צריכים להצהיר על האינדקסים שבהם אתם משתמשים באמצעות Query::OrderByChild() במחשב, אחרת המאזינים שלכם ייכשלו.
- גרסת Realtime Database למחשב לא תומכת במצב אופליין או בשימור נתונים.