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
Rufen Sie in der Firebase-Konsole Datenbanken und Speicher > Realtime Database auf.
Klicken Sie auf Datenbank erstellen.
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.
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:
(für Datenbanken inDATABASE_NAME.firebaseio.comus-central1) (für Datenbanken an allen anderen Standorten)DATABASE_NAME.REGION.firebasedatabase.app
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
Informationen zum Strukturieren von Daten für Realtime Database
Bereiten Sie die Veröffentlichung Ihrer App vor:
- Richten Sie in der Google Cloud-Konsole Budgetbenachrichtigungen für Ihr Projekt ein.
- Im Dashboard „Nutzung und Abrechnung“ in der Firebase-Konsole können Sie sich einen Überblick über die Nutzung Ihres Projekts in mehreren Firebase-Diensten verschaffen. Weitere Informationen zur Nutzung finden Sie auch im Realtime Database Nutzungs-Dashboard.
- Sehen Sie sich die Checkliste für die Einführung von Firebase an.
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.