Por que e como usar o Firebase Suite do Google: o que suas ferramentas podem fazer por você

Neste artigo explicamos por que você deve conferir o Firebase e como ele pode ajudá-lo a ter sucesso com suas ferramentas!

Os blocos de construção fundamentais do desenvolvimento de aplicativos Android podem ser reduzidos a um Ambiente de Desenvolvimento Integrado (IDE) e um dispositivo ou emulador para executá-lo e, embora sejam suficientes para criar um aplicativo, uma série de outras ferramentas aumentam a experiência do desenvolvedor, ajudando a equipe por trás do produto a dimensioná-lo, melhorar a experiência do usuário, aumentar o engajamento e a retenção e ganhar mais.

O Twitter está por trás de um dos conjuntos mais robustos e confiáveis ​​dessas ferramentas, Tecido, e o Google aumentou o aquecer transformando sua aquisição de banco de dados em tempo real, Firebase, em um conjunto completo de desenvolvimento móvel. O Firebase inclui uma ampla variedade de ferramentas com implementações simples e é um recurso impressionante oferta de Mountain View, então dê uma olhada no que ela pode fazer e comece a implementá-la em seu produtos.

Análise

Apesar do Google Analytics fornecer uma solução robusta para insights sobre o uso de aplicativos e o envolvimento do usuário, uma quantidade significativa de desenvolvedores profissionais optam por seguir o caminho de terceiros, optando por ferramentas como Flurry e Fabric, para uma variedade de razões. O Firebase Analytics visa atender a essa necessidade

O uso mais simples de instalações de registros do Firebase Analytics, atributos de usuário e um conjunto predefinido de eventos, com o documentação fornecendo instruções para uso mais avançado. Implementar um conjunto de análises é uma das etapas mais benéficas que um desenvolvedor pode realizar, pois fornece dados sobre o usuário comportamento, dados demográficos alvo, possíveis armadilhas, anomalias de experiência e mapas de calor de uso, auxiliando na tomada de decisões e marketing.

Uso Simples
compile 'com.google.firebase: firebase-core: 9.2.0'
private FirebaseAnalytics mFirebaseAnalytics; 

mFirebaseAnalytics = FirebaseAnalytics.getInstance(this);

Autenticação

A maioria dos aplicativos hoje em dia precisa saber a identidade do usuário, o que permite armazenar dados exclusivos de cada um. Isso, por sua vez, permite que o produto reconheça o usuário e forneça uma experiência personalizada e contínua em todas as plataformas. A autenticação geralmente é um processo tedioso, dadas as preferências variadas dos segmentos da base de usuários em termos de provedor de autenticação.

Autenticação Firebase encapsula o processo, autenticando através dos provedores Google, Facebook e Twitter, através de padrões da indústria como OAuth 2.0 e OpenID, sem a necessidade de qualquer código no servidor.

Uso simples usando a autenticação do Google
compile 'com.google.firebase: firebase-auth: 9.2.0' 

compile 'com.google.android.gms: play-services-auth: 9.2.0'

GoogleSignInOptions gso =newGoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)

.requestIdToken(getString(R.string.default_web_client_id))

.requestEmail()

.build();


Base de dados

O Firebase começou como um produto de banco de dados em tempo real, que foi adquirido pelo Google e assim permaneceu por muito tempo, antes de passar por uma posterior correção de rumo. Ainda a pedra angular da suíte, Banco de dados em tempo real do Firebase permite que os desenvolvedores armazenem dados em um banco de dados NoSQL no formato JSON, fornecendo opções de sincronização em tempo real para todos os dispositivos conectados e disponibilidade offline.

O plano gratuito do Firebase tem um limite de conexões simultâneas de banco de dados e contagens de gravação por segundo, com os níveis pagos oferecendo muito mais flexibilidade. O modelo é extremamente simples de implementar e fornece uma ferramenta poderosa com poucas linhas de código, com o console oferecendo opções avançadas, como autenticação opcional.

Uso Simples
compile 'com.google.firebase: firebase-database: 9.2.0' 
FirebaseDatabase database =FirebaseDatabase.getInstance();

DatabaseReference myRef = database.getReference("message");

myRef.setValue("Hello, World!");

Armazenar

A grande maioria dos aplicativos exige que alguma quantidade de dados seja armazenada na nuvem, sejam imagens, áudio ou vídeo. A maioria desses aplicativos depende de servidores privados para entregar esses dados, e Armazenamento Firebase tem como objetivo fornecer uma solução mais simples para isso. Apoiada pelo Google Cloud Storage, a ferramenta oferece uploads e downloads seguros de arquivos, independentemente da qualidade da rede, e oferece uma quantidade generosa de espaço até mesmo para o plano gratuito.

Uso Simples
compile 'com.google.firebase: firebase-storage: 9.2.0'

compile 'com.google.firebase: firebase-auth: 9.2.0'

FirebaseStorage storage =FirebaseStorage.getInstance();

Hospedagem

A hospedagem na Web é um alicerce fundamental de toda a Internet, e é difícil encontrar uma boa hospedagem gratuita. Hospedagem Firebase pretende ser a solução perfeita para construir e implantar aplicativos da web, bem como conteúdo estático em uma CDN (Content Delivery Network) global com facilidade. Ele também oferece a opção de estacionar um domínio personalizado no conteúdo hospedado, permitindo que os desenvolvedores forneçam URLs amigáveis ​​para seus aplicativos da web.

O Firebase Hosting oferece armazenamento configurado com SSL e caches SSD, garantindo que o conteúdo seja carregado de forma rápida e segura. A implantação é feita por meio de uma simples execução de linha de comando, com uma opção no console para reverter para versões mais antigas.

Uso Simples
npm install -g firebase-tools. 

firebase init

firebase deploy

Configuração remota

A experiência do usuário é talvez a métrica mais importante quando se trata de medir o sucesso e o crescimento de um aplicativo e fornecer uma experiência aperfeiçoada. a experiência do usuário geralmente requer a realização de um certo número de experimentos, com várias opções sendo exploradas para chegar ao caminho certo um. Anteriormente, isso era realizado por meio de atualizações sucessivas e subsequente coleta de análises, mas Configuração remota do Firebase elimina todas as complicações, permitindo mudanças de comportamento e aparência sem quaisquer atualizações.

A configuração remota é realizada pelo aplicativo acessando o servidor para um determinado conjunto de parâmetros e se o usuário se enquadrar no segmento desejado, recupera os valores definidos pelo desenvolvedor do console, voltando aos valores padrão no aplicativo em caso de qualquer negativo resultado

Uso Simples
compile 'com.google.firebase: firebase-config: 9.2.0' 
mFirebaseRemoteConfig =FirebaseRemoteConfig.getInstance();

Laboratório de testes (somente plano Blaze)

Os farms de dispositivos que atuam como laboratórios de testes ganharam enorme força ultimamente e, apesar do Google Play Developer Console fornecer uma versão básica de um laboratório de testes, Laboratório de testes do Firebase vai além, fornecendo automaticamente implantação com um clique para uma variedade de dispositivos e configurações de dispositivos. Os resultados incluem logs, capturas de tela e gravações de tela de execução e falhas, permitindo que os desenvolvedores identifiquem e corrijam possíveis bugs antes do lançamento, após testes robustos nos dispositivos.

O Test Lab está disponível apenas no plano Blaze pré-pago, com testes custando US$ 5/hora do dispositivo. O processo pode ser iniciado no próprio Android Studio e integra-se bem com configurações de CI (integração contínua).

Colidir

Os relatórios de falhas no Android tiveram um destino semelhante ao da análise, com o Crashlytics sendo a solução amplamente popular pela qual a maioria dos desenvolvedores opta. No entanto, Relatório de falhas do Firebase é a aposta do Google no setor, já que é uma área crítica quando se trata de dimensionar aplicativos, muitas vezes sendo um fator decisivo.

O Firebase Crash Reporting relata falhas automaticamente simplesmente adicionando a biblioteca ao script de compilação do Gradle, classificando e agrupando erros com base na gravidade, rastreamentos de pilha, usuários afetados, etc. A biblioteca também oferece suporte a uma implementação mais avançada, que permite aos desenvolvedores registrar eventos que levaram ao travamento.

Uso Simples
compile 'com.google.firebase: firebase-crash: 9.2.0'

Notificações

Anteriormente conhecido como C2DM (Cloud to Device Messaging), o serviço de mensagens em nuvem do Google já passou por outra mudança de nomenclatura, trocando seu apelido de Google Cloud Messaging para se tornar Firebase Cloud Mensagens. O serviço permite que desenvolvedores enviem pequenas quantidades de dados para dispositivos sem nenhum custo, seja para notificação, mensagem instantânea ou sincronização de informações.

Uma implementação básica envolve apenas adicionar a biblioteca ao script de construção do Gradle, permitindo que os desenvolvedores enviem notificações push básicas aos dispositivos. Implementações mais avançadas incluem tratamento de recebimento de mensagens, respostas de dispositivo para nuvem, etc.

Uso Simples
compile 'com.google.firebase: firebase-messaging: 9.2.0'

Links dinâmicos são URLs inteligentes que podem abrir diferentes conteúdos com base na plataforma em que são ativados. Embora longe de ser um conceito novo, o Firebase Dynamic Links permite que segmentos direcionados aumentem a aquisição, a retenção e o valor da vida útil, e também funciona em instalações de aplicativos, conectando-se ao Google Play para solicitar uma instalação se o aplicativo associado não estiver presente no dispositivo.

O Firebase Dynamic Links também inclui o que antes era conhecido como Google AppInvites, permitindo que os usuários compartilhar um aplicativo com seus círculos, solicitando uma abertura se o aplicativo estiver instalado e uma instalação se o aplicativo estiver ausente.

Uso simples após criar um link dinâmico no console
compile 'com.google.firebase: firebase-invites: 9.2.0'

android: name="android.intent.action.VIEW"/>

android: name="android.intent.category.DEFAULT"/>

android: name="android.intent.category.BROWSABLE"/>

android: host="example.com"android: scheme="http"/>

android: host="example.com"android: scheme="https"/>

AdMob

A plataforma de publicidade móvel de longa data do Google está sob a égide do Firebase, vinculando-se ao Firebase Analytics para fornecer detalhes adicionais de uso. As configurações existentes da AdMob podem permanecer intactas, com integração integrada, sendo o único requisito um pequeno processo de vinculação.

Uso Simples
Getting Started with AdMob