Ir para o console

Primeiros passos com o Firebase Realtime Database para C++

Os dados são armazenados e sincronizados pelo Firebase Realtime Database com um banco de dados NoSQL hospedado na nuvem. Os dados são sincronizados em todos os clientes em tempo real e permanecem disponíveis quando seu app está off-line.

Antes de começar

Antes de usar o Firebase Realtime Database, você precisa:

  • Registrar seu projeto em C++ e configurá-lo para usar o Firebase

    Se o projeto em C++ já usa o Firebase, isso significa que ele já está registrado e configurado para o Firebase.

  • No arquivo build.gradle do nível de projeto, inclua o repositório Maven do Google, tanto nas seções buildscript e allprojects.

  • Adicionar o SDK do Firebase para C++ ao seu projeto em C ++.

A adição do Firebase ao projeto em C++ envolve tarefas no Console do Firebase e no projeto em C++ aberto (por exemplo, você faz o download dos arquivos de configuração do Firebase no console e os move para o projeto em C++).

Configurar o acesso público

O Realtime Database oferece uma linguagem de regras declarativas que permite que você defina como os dados devem ser estruturados, como devem ser indexados e quando podem ser lidos e gravados. Por padrão, o acesso de leitura e gravação ao seu banco de dados é restrito, por isso apenas usuários autenticados podem ler ou gravar dados. Para iniciar sem configurar o Firebase Authentication, defina as regras para acesso público. Isso faz com que seu banco de dados esteja disponível para qualquer pessoa, mesmo para quem não utiliza seu app. Por isso, restrinja seu banco de dados novamente quando configurar a autenticação.

Criar e inicializar o firebase::App

Antes de acessar o Realtime Database, crie e inicialize o firebase::App.

Inclua o arquivo de cabeçalho do firebase::App:

#include "firebase/app.h"

Android

Transmita o ambiente JNI e uma referência jobject à atividade Java como argumentos para criar o firebase::App:

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

iOS

Crie o firebase::App:

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

Acessar a classe firebase::database::Database

A firebase::database::Database é o ponto de entrada do SDK em C++ do Firebase Realtime Database.

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

Se você optou por usar o acesso público para suas regras, avance para as seções sobre como salvar e recuperar dados.

Como configurar o acesso restrito

Se você não quiser usar o acesso público, adicione o Firebase Authentication ao seu app para controlar o acesso ao banco de dados.

Próximas etapas

Problemas conhecidos

  • Em plataformas de computador (Windows, Mac, Linux), o SDK em C++ do Firebase usa o REST para acessar seu banco de dados. Sendo assim, é preciso declarar os índices que você usa com Query::OrderByChild() no computador para evitar falha nos listeners.
  • A versão do fluxo de trabalho para computadores do Realtime Database não é compatível com a persistência ou com o uso off-line.