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