Erste Schritte mit Firebase Realtime Database für C++

Die Firebase Realtime Database speichert und synchronisiert Daten mithilfe einer NoSQL-Cloud-Datenbank. Daten werden in Echtzeit über alle Clients synchronisiert und bleiben verfügbar, wenn die Anwendung offline geht.

Vorbereitung

Bevor Sie Firebase Realtime Database verwenden können, müssen Sie Folgendes tun:

  • Registrieren Sie Ihr C++-Projekt und konfigurieren Sie es für die Verwendung von Firebase.

    Wenn Ihr C++-Projekt bereits Firebase verwendet, ist es bereits für Firebase registriert und konfiguriert.

  • Fügen Sie das Firebase C++ SDK zu Ihrem C++-Projekt hinzu.

Wenn Sie Firebase zu Ihrem C++-Projekt hinzufügen, müssen Sie sowohl in der Firebase Console als auch in Ihrem offenen C++-Projekt Aufgaben ausführen. Sie laden beispielsweise Firebase-Konfigurationsdateien aus der Console herunter und verschieben sie dann in Ihr C++-Projekt.

Datenbank erstellen

  1. Rufen Sie in der Firebase-Konsole Datenbanken und Speicher > Realtime Database auf.

  2. Klicken Sie auf Datenbank erstellen.

  3. Wähle einen Startmodus für dein Firebase Security Rules aus:

    Testmodus

    Gut für den Einstieg in die mobilen und Web-Clientbibliotheken, aber jeder kann Ihre Daten lesen und überschreiben. Nach dem Testen sollten Sie sich den Abschnitt Firebase Realtime Database-Regeln verstehen ansehen.

    Wählen Sie den Testmodus aus, um mit dem Web-, Apple- oder Android-SDK zu beginnen.

    Sperrmodus

    Verweigert alle Lese- und Schreibvorgänge von Mobil- und Webclients. Ihre authentifizierten Anwendungsserver können weiterhin auf Ihre Datenbank zugreifen.

  4. Wählen Sie einen Standort für die Datenbank aus.

    Je nach Speicherort der Datenbank hat die URL für die neue Datenbank eines der folgenden Formate:

    • DATABASE_NAME.firebaseio.com (für Datenbanken in us-central1)

    • DATABASE_NAME.REGION.firebasedatabase.app (für Datenbanken an allen anderen Standorten)

  5. Klicken Sie auf Fertig.

Wenn Sie Realtime Database aktivieren, wird die API auch im Cloud API Manager aktiviert.

firebase::App erstellen und initialisieren

Bevor Sie auf die Realtime Database zugreifen können, müssen Sie die firebase::App erstellen und initialisieren.

Fügen Sie die Header-Datei für firebase::App ein:

#include "firebase/app.h"

Android

Erstellen Sie die firebase::App und übergeben Sie die JNI-Umgebung und einen jobject-Verweis auf die Java-Aktivität als Argumente:

app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);

iOS+

Erstellen Sie firebase::App:

app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));

Auf die Klasse „firebase::database::Database“ zugreifen

firebase::database::Database ist der Einstiegspunkt für das Firebase Realtime Database C++ SDK.

::firebase::database::Database *database = ::firebase::database::Database::GetInstance(app);

Wenn Sie sich für den öffentlichen Zugriff für Ihre Regeln entschieden haben, können Sie mit den Abschnitten zum Speichern und Abrufen von Daten fortfahren.

Eingeschränkten Zugriff einrichten

Wenn Sie den öffentlichen Zugriff nicht verwenden möchten, können Sie Ihrer Anwendung Firebase Authentication hinzufügen, um den Zugriff auf die Datenbank zu steuern.

Nächste Schritte

Bekannte Probleme

  • Auf Desktop-Plattformen (Windows, Mac, Linux) verwendet das Firebase C++ SDK REST, um auf Ihre Datenbank zuzugreifen. Daher müssen Sie die von Ihnen verwendeten Indexe mit Query::OrderByChild() auf dem Desktop deklarieren, da sonst Ihre Listener fehlschlagen.
  • Die Desktop-Workflow-Version von Realtime Database unterstützt weder Offline- noch Persistenzfunktionen.