Como buscar dados do Firebase no Android?

Objetivos do blog

Depois de ler este blog, poderemos buscar dados do Firebase Realtime Database. Esses dados podem incluir tipos de dados simples, como Strings, ou tipos de dados complexos, como objetos Java.

Pré-requisitos

Precisamos ter um projeto do Android Studio e um projeto do Firebase prontos para usar o Firebase Realtime Database. Crie um novo projeto do Android Studio (ou use qualquer projeto existente). Este projeto do Android Studio será usado para trabalhar com o banco de dados em tempo real. Siga as etapas abaixo para criar o projeto Firebase –

1. Acesse https://console.firebase.google.com

2. Clique em “Adicionar projeto“Botão.

3. Digite o nome do projeto e aceite as condições e clique em “Continuar“Botão.

 

4. Em seguida, adicione o aplicativo Android ao seu projeto. Requer a inserção do nome do pacote do aplicativo. Clique em Avançar.

5. Faça o download do arquivo google-services.json e mova esse arquivo para o local no projeto Android no Android Studio conforme especificado na tela.

6. Na próxima etapa, haveria um pequeno tutorial para adicionar 3 linhas de código nos arquivos build.gradle no nível do projeto e no nível do aplicativo. Adicione-os de acordo.

7. Em seguida, termine este processo de adicionar o aplicativo Android ao projeto.

8. Em seguida, clique na opção “Banco de dados” no menu à esquerda e clique no botão “Criar banco de dados”.

 

9. A configuração do Firebase foi concluída Agora, adicione a biblioteca do Firebase para usar o Firebase Realtime Database no arquivo build.gradle no nível do aplicativo. Isso pode ser feito adicionando a seguinte linha:

implementação 'com.google.firebase:firebase-database:16.0.6'

Implementação de Código

Antes de buscar as referências, você terá que entender o que é uma referência do Firebase. Uma referência do Firebase aponta para um local no Firebase Database onde os dados são armazenados. Mesmo que você crie várias referências, todas elas compartilham a mesma conexão, desde que você tenha usado o mesmo caminho ao criar a referência da instância do banco de dados. Em primeiro lugar, precisamos ter uma instância do Firebase Database para usá-lo. A instância pode ser criada pela seguinte linha de código.

 

private FirebaseDatabase mDatabase = FirebaseDatabase.getInstance();

 

Agora é necessário criar referências dos caminhos onde os dados são armazenados no banco de dados. Como os dados do banco de dados do Firebase são armazenados no formato JSON, as chaves do objeto JSON são os caminhos especificados nas referências. A referência ao nó raiz pode ser criada pela seguinte linha de código:

 

private DatabaseReference mGetReference = mDatabase.getReference();

 

Depois de obter a referência do banco de dados, um ouvinte assíncrono deve ser anexado à referência do banco de dados que ouve ativamente qualquer alteração feita no banco de dados. Esse ouvinte retorna um instantâneo de dados do banco de dados inicialmente pela primeira vez quando é anexado. Em seguida, o instantâneo de dados é retornado quando qualquer alteração é feita no caminho para o qual a referência do banco de dados está apontando. Normalmente, o banco de dados contém o mesmo tipo de dados, mas suponha que o banco de dados contenha alguns dados de tipos diferentes. Abaixo, encontre a captura de tela do banco de dados contendo alguns dados fictícios:

 

Para buscar o banco de dados desse banco de dados, anexe o ValueEventListener à referência do banco de dados. O listener pode ser adicionado pelo seguinte código:

 

mGetReference.addValueEventListener(new ValueEventListener() { @Override public void onDataChange(@NonNull DataSnapshot dataSnapshot) { if (dataSnapshot.exists()){ HashMap dataMap = (HashMap ) dataSnapshot.getValue(); for (String key : dataMap.keySet()){ Object data = dataMap.get(key); tente { HashMap userData = (HashMap ) dados; User mUser = new User((String) userData.get("name"), (int) (long) userData.get("age")); addTextToView(mUser.getName() + " - " + Integer.toString(mUser.getAge())); }catch (ClassCastException cce){ // Se o objeto não puder ser convertido em HashMap, significa que é do tipo String. try{ String mString = String.valueOf(dataMap.get(key)); addTextToView(mString); }catch (ClassCastException cce2){ } } } } } @Override public void onCancelled(@NonNull DatabaseError databaseError) { } });

Após anexar o listener, ele é executado inicialmente retornando todos os dados do banco de dados naquele momento. Este ouvinte será invocado posteriormente no momento em que ocorrer qualquer alteração no banco de dados no caminho apontado pela referência à qual o ouvinte está anexado.

Resumo

Após seguir o procedimento acima, você poderá buscar dados do banco de dados Firebase Realtime no Android. Se você enfrentar algum problema, sinta-se à vontade para nos contatar em support@knowband.com.� Também fornecemos desenvolvimento e módulos personalizados para as principais plataformas CMS, como Prestashop, Opencart, Magento, Magento 2 e Woocommerce. Dê uma olhada em nossos mais populares Construtor de aplicativos móveis sem código Woocommerce:

 

Como salvar dados no Firebase em Swift Language (iOS)?

Objetivos do blog

Depois de ler este blog, poderemos instalar o SDK do Firebase em seu projeto e escrever o código para salvar os dados no banco de dados do Firebase junto com a criação do projeto do Firebase.

Benefícios de usar o Firebase Database

Não importa se você está trabalhando em um projeto pequeno ou se está de olho em um grande, você precisa de um banco de dados para armazenar todas as suas informações. Se você estiver trabalhando em um projeto pequeno, poderá usar este banco de dados do Firebase. Aqui está a lista de benefícios usando o banco de dados Firebase: 1. Ajuda você a gerenciar sem esforço os dados de sua loja. 2. Se os dados mudarem a qualquer momento, todos os dispositivos conectados receberão os dados atualizados em seus dispositivos. 3. O banco de dados em tempo real do Firebase é gratuito. 4. Economia de tempo. 5. Fácil de usar e suporte multiplataforma para SDK. 6. Útil para aplicativos de bate-papo, notificações push, feed de notícias, etc.

Pré-requisitos

Precisamos escrever um código rápido para salvar os dados no Firebase. Para isso, primeiro teremos que criar o projeto Firebase. Siga as etapas abaixo para criar o projeto Firebase – 1. Vá para https://console.firebase.google.com

2. Clique em “Adicionar projeto“botão

 

3. Em seguida, crie o aplicativo iOS e baixe o arquivo GoogleService-Info.plist 4. Em seguida, mova o arquivo plist para dentro do projeto 5. Depois que no Xcode, abra AppDelegate.swift e adicione este código antes da instrução return dentro de application(_:didFinishLaunchingWithOptions:)

FirebaseApp.configure()

6. Em seguida, clique em “banco de dados” opção no menu à esquerda.

 

7. Selecione “Banco de dados em tempo real“, lá você encontrará a URL do banco de dados, que você pode usar no código para buscar os dados do banco de dados. Geralmente você não precisará dessa URL, pois estamos usando GoogleServices-Info.plist arquivo e a url do banco de dados já está disponível nesse arquivo, precisamos apenas inicializar o arquivo Firebase. 8. A configuração do Firebase está concluída Agora você terá que baixar o Firebase SDK no swift. Para isso, você terá que instalar os seguintes pods. 1. pod ‘Firebase/Núcleo‘ 2. vagem ‘Firebase/Banco de dados‘ Vamos supor que atualmente não temos dados no banco de dados Firebase e queremos salvar os seguintes dados no formato fornecido no banco de dados� –

// A raiz da árvore { "movies": [ "movie1": { "name": "Avengers", "addedByUser": "John" }, "movie2": { "name": "Star Wars", " addByUser": "Jane" }, ] }

Depois de instalar com sucesso os pods no projeto, estamos prontos para implementar a parte de codificação.


Implementação de código Antes de criar as referências, você terá que entender o que é uma referência do Firebase. Uma referência do Firebase aponta para um local no Firebase onde os dados são armazenados. Mesmo que você crie várias referências, todas elas compartilham a mesma conexão. Primeiro teremos que criar a referência do FIRDatabaseReference. A referência que conterá o nó raiz (itens de mercearia) pode ser feita usando o seguinte código –

let ref = Database.database().reference(withPath: "movies")

ou você também pode usar a seguinte maneira –

deixe rootRef = Database.database().reference() let ref = rootRef.child("filmes")

Em seguida, teremos que criar referência aos itens filhos que são leite e pizza para que possamos adicionar os dados dentro desses nós.

let movieRefAvengers = ref.child("movie1") let movieRefStarWars = ref.child("movie2")

Sabemos que precisamos salvar o dicionário dentro dessas chaves. Para isso, criaremos dois dicionários um para leite e outro para pizza.

let dictMovieRefAvengers: [String: String] = ["name": "Avengers", "addedByUser": "John"] let dictMovieRefStarWars: [String: String] = ["name": "Star Wars", "addedByUser": " Jane"]

Depois disso podemos adicionar o dictFilmeRefAvengers e dictFilmeRefStarWars no filmeRefAvengers e filmeRefStarWars e estes serão adicionados como um filho dessas referências. Existem dois métodos usados ​​para salvar dados no banco de dados do Firebase que são setValue e updateChildValues. Se você quiser saber quando seus dados foram confirmados, você pode adicionar um bloco de conclusão. Ambos setValue e updateChildValues ​​recebem um bloco de conclusão opcional que é chamado quando a gravação é confirmada no banco de dados. Esse ouvinte pode ser útil para acompanhar quais dados foram salvos e quais dados ainda estão sendo sincronizados.

 

// Salvando os valores em movie1 node movieRefAvengers.setValue(dictMovieRefAvengers) { (error:Error?, ref:DatabaseReference) in if let error = error { print("Os dados não puderam ser salvos: \(error).") } else { print("Dados salvos com sucesso!") } } // Salvando os valores no nó pizza movieRefStarWars.setValue(dictMovieRefStarWars) { (error:Error?, ref:DatabaseReference) in if let error = error { print("Os dados não puderam ser ser salvo: \(erro).") } else { print("Dados salvos com sucesso!") } }

 

Após executar o código mostrado acima, você obterá a mesma estrutura no banco de dados Firebase que já foi mostrada.

Resumo

Após seguir o procedimento acima, você poderá salvar os dados no banco de dados do Firebase rapidamente.

Leia também estes artigos: