O Firebase Realtime Database armazena e sincroniza dados usando um banco de dados em nuvem NoSQL. Os dados são sincronizados em todos os clientes em tempo real e permanecem disponíveis quando seu aplicativo fica offline.
Antes de você começar
Antes de usar o Firebase Realtime Database , você precisa:
Registre seu projeto C++ e configure-o para usar o Firebase.
Se o seu projeto C++ já usa o Firebase, ele já está registrado e configurado para o Firebase.
Adicione o SDK do Firebase para C++ ao seu projeto C++.
Observe que adicionar o Firebase ao seu projeto C++ envolve tarefas no console do Firebase e no seu projeto C++ aberto (por exemplo, você baixa os arquivos de configuração do Firebase do console e os move para o seu projeto C++).
Crie um banco de dados
Navegue até a seção Realtime Database do console do Firebase . Você será solicitado a selecionar um projeto existente do Firebase. Siga o fluxo de trabalho de criação de banco de dados.
Selecione um modo de inicialização para suas regras de segurança do Firebase:
- Modo de teste
Bom para começar a usar as bibliotecas de cliente móvel e web, mas permite que qualquer pessoa leia e substitua seus dados. Após o teste, revise a seção Entenda as regras do Firebase Realtime Database .
Para começar a usar o SDK da Web, Apple ou Android, selecione testmode.
- Modo bloqueado
Nega todas as leituras e gravações de clientes móveis e da Web. Seus servidores de aplicativos autenticados ainda poderão acessar seu banco de dados.
Escolha um local para o banco de dados.
Dependendo da localização do banco de dados , a URL do novo banco de dados estará em um dos seguintes formatos:
DATABASE_NAME .firebaseio.com
(para bancos de dados emus-central1
)DATABASE_NAME . REGION .firebasedatabase.app
(para bancos de dados em todos os outros locais)
Clique em Concluído .
Ao ativar o Realtime Database, ele também ativa a API no Cloud API Manager .
Criar e inicializar firebase::App
Antes de acessar o Realtime Database, você precisará criar e inicializar firebase::App
.
Inclua o arquivo de cabeçalho para firebase::App
:
#include "firebase/app.h"
Android
Crie o firebase::App
, passando o ambiente JNI e uma referência jobject
para a atividade Java como argumentos:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);
iOS+
Crie o firebase::App
:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));
Acesse a classe firebase::database::Database
O firebase::database::Database
é o ponto de entrada para o SDK 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, poderá prosseguir para as seções sobre como salvar e recuperar dados.
Configurando acesso restrito
Se não quiser usar o acesso público, você pode adicionar o Firebase Authentication ao seu aplicativo para controlar o acesso ao banco de dados.
Próximos passos
Aprenda como estruturar dados para o Realtime Database.
Dimensione seus dados em diversas instâncias de banco de dados.
Prepare-se para lançar seu aplicativo:
- Configure alertas de orçamento para seu projeto no console do Google Cloud.
- Monitore o painel de uso e faturamento no console do Firebase para ter uma visão geral do uso do seu projeto em vários serviços do Firebase. Você também pode visitar o painel de uso do Realtime Database para obter informações de uso mais detalhadas.
- Revise a lista de verificação de lançamento do Firebase .
Problemas conhecidos
- Em plataformas de desktop (Windows, Mac, Linux), o SDK C++ do Firebase usa REST para acessar seu banco de dados. Por causa disso, você deve declarar os índices usados com Query::OrderByChild() no desktop ou seus ouvintes falharão.
- A versão do fluxo de trabalho para desktop do Realtime Database não oferece suporte off-line ou persistência.