תחילת העבודה עם מסד נתונים בזמן אמת ב-Firebase עבור C++

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

לפני שתתחיל

לפני שתוכלו להשתמש ב-Firebase Realtime Database, אתם צריכים:

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

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

  • מוסיפים את Firebase C++ SDK לפרויקט ב-C++.

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

יצירת מסד נתונים

  1. עוברים לקטע Realtime Database במסוף Firebase. תתבקשו לבחור פרויקט קיים ב-Firebase. פועלים לפי תהליך העבודה ליצירת מסד נתונים.

  2. בוחרים מצב התחלה ל-Firebase Security Rules:

    מצב בדיקה

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

    כדי להתחיל לעבוד עם SDK לאינטרנט, ל-Apple או ל-Android, בוחרים באפשרות testmode.

    מצב נעילה

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

  3. בוחרים מיקום למסד הנתונים.

    בהתאם למיקום של מסד הנתונים, כתובת ה-URL של מסד הנתונים החדש תהיה באחד מהפורמטים הבאים:

    • DATABASE_NAME.firebaseio.com (למסדי נתונים ב-us-central1)

    • DATABASE_NAME.REGION.firebasedatabase.app (למסדי נתונים בכל שאר המיקומים)

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

כשמפעילים את Realtime Database, ה-API מופעל גם במנהל Cloud API.

יצירה והפעלה של 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 לאפליקציה כדי לשלוט בגישה למסד הנתונים.

השלבים הבאים

בעיות ידועות

  • בפלטפורמות מחשבים (Windows, Mac ו-Linux), ערכת ה-SDK Firebase C++ משתמשת ב-REST כדי לגשת למסד הנתונים שלכם. לכן, צריך להצהיר על המדדים שבהם אתם משתמשים באמצעות Query::OrderByChild() במחשב, אחרת המאזינים ייכשלו.
  • הגרסה של Realtime Database לתהליך העבודה במחשב לא תומכת באופליין או בהתמדה.