Firebase Realtime Database archivia e sincronizza i dati utilizzando un database NoSQL nel cloud. I dati vengono sincronizzati in tempo reale su tutti i client e rimangono disponibili quando l'app va offline.
Prima di iniziare
Prima di poter utilizzare Firebase Realtime Database, devi:
Registrare il tuo progetto C++ e configurarlo in modo che utilizzi Firebase.
Se il tuo progetto C++ utilizza già Firebase, è già registrato e configurato per Firebase.
Aggiungere l'Firebase C++ SDK al tuo progetto C++.
Tieni presente che l'aggiunta di Firebase al tuo progetto C++ comporta attività sia nella Firebase console sia nel progetto C++ aperto (ad esempio, scarichi i file di configurazione di Firebase dalla console, poi li sposti nel progetto C++).
Creare un database
Vai alla sezione Realtime Database della console Firebase. Ti verrà chiesto di selezionare un progetto Firebase esistente. Segui il flusso di lavoro per la creazione del database.
Seleziona una modalità di avvio per Firebase Security Rules:
- Modalità di prova
Ideale per iniziare a utilizzare le librerie client web e su dispositivi mobili, ma consente a chiunque di leggere e sovrascrivere i tuoi dati. Dopo il test, assicurati di esaminare la sezione Informazioni sulle regole di Firebase Realtime Database.
Per iniziare a utilizzare l'SDK web, Apple o Android, seleziona la modalità di prova.
- Modalità di blocco
Nega tutte le operazioni di lettura e scrittura dei client web e su dispositivi mobili. I server delle applicazioni autenticati possono comunque accedere al database.
Scegli una località per il database.
A seconda della località del database, l' URL del nuovo database avrà uno dei seguenti formati:
(per i database inDATABASE_NAME.firebaseio.comus-central1) (per i database in tutte le altre località)DATABASE_NAME.REGION.firebasedatabase.app
Fai clic su Fine.
Quando abiliti Realtime Database, viene abilitata anche l'API in the Cloud API Manager.
Creare e inizializzare firebase::App
Prima di poter accedere a Realtime Database, devi creare e inizializzare
firebase::App.
Includi il file di intestazione per firebase::App:
#include "firebase/app.h"
Android
Crea firebase::App, passando l'ambiente JNI e un riferimento jobject all'attività Java come argomenti:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);
iOS+
Crea firebase::App:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));
Accedere alla classe firebase::database::Database
Il firebase::database::Database
è il punto di accesso per l'SDK C++ Firebase Realtime Database.
::firebase::database::Database *database = ::firebase::database::Database::GetInstance(app);
Se hai scelto di utilizzare l'accesso pubblico per le tue regole, puoi procedere alle sezioni relative al salvataggio e al recupero dei dati.
Configurare l'accesso limitato
Se non vuoi utilizzare l'accesso pubblico, puoi aggiungere Firebase Authentication alla tua app per controllare l'accesso al database.
Passaggi successivi
Scopri come strutturare i dati per Realtime Database.
Prepararsi al lancio dell'app:
- Configurare gli avvisi di budget per il progetto nella Google Cloud console.
- Monitorare la dashboard Utilizzo e fatturazione nella console Firebase per avere una visione generale dell'utilizzo del progetto su più servizi Firebase. Puoi anche visitare la Realtime Database dashboard Utilizzo di Realtime Database per informazioni sull'utilizzo più dettagliate.
- Esaminare la checklist di lancio di Firebase.
Problemi noti
- Sulle piattaforme desktop (Windows, Mac, Linux), l'Firebase C++ SDK utilizza REST per accedere al database. Per questo motivo, devi dichiarare gli indici che utilizzi con Query::OrderByChild() sul desktop o i listener non funzioneranno.
- La versione del flusso di lavoro desktop di Realtime Database non supporta la modalità offline o persistenza.