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

Android

  1. Se você ainda não conectou o app ao projeto do Firebase, faça isso no Firebase console.
  2. Adicione o Firebase ao seu projeto do Android.
  3. Adicione a dependência do Firebase Realtime Database ao seu arquivo build.gradle de nível de aplicativo:

    dependencies {
         implementation 'com.google.firebase:firebase-database:16.0.5'
    }
    
  4. Vincule as bibliotecas estáticas libapp.a e libdatabase.a por meio do SDK para C++.

iOS

  1. Se você ainda não conectou o app ao projeto do Firebase, faça isso no Firebase console.
  2. Adicione o Firebase ao projeto do iOS.
  3. Inclua este pod no Podfile:

    pod 'Firebase/Database'
    
  4. Execute pod install.

  5. Adicione firebase.framework e firebase_database.framework ao seu projeto do Xcode por meio do SDK para C++.

Como 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 para 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 do Realtime Database para computadores usa o REST para acessar seu banco de dados. Sendo assim, você precisa 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 off-line ou persistência.

Enviar comentários sobre…

Precisa de ajuda? Acesse nossa página de suporte.