Use FCM e FIAM para enviar mensagens aos usuários

1. Antes de começar

Neste codelab, você aprenderá como adicionar a capacidade de interagir com os usuários, estejam eles usando seu app em primeiro plano ou em segundo plano.

206c7ecece550bde.png

Pré-requisitos

Nenhum

O que você aprenderá

  • Adicione o Firebase ao seu aplicativo Android
  • Adicione dependências FCM e FIAM
  • Envie uma mensagem de teste do FCM para seu aplicativo
  • Envie mensagem de teste FIAM para seu aplicativo

O que você precisará

  • Estúdio Android 4.1
  • Dispositivo ou emulador Android

2. Comece

Obtenha o código de exemplo

Clone o repositório GitHub na linha de comando:

Importe o aplicativo inicial

No Android Studio, selecione o diretório codelab-fcm-and-fiam ( android_studio_folder.png ). Seria aquele clonado na etapa anterior ( Arquivo > Abrir > .../codelab-fcm-and-fiam).

Agora você deve ter o projeto FcmAndFiam aberto no Android Studio. Se você receber um aviso sobre a falta de um arquivo google-services.json, não se preocupe. Ele será adicionado na próxima etapa.

3. Crie um projeto de console do Firebase

Adicione o Firebase ao projeto

  1. Vá para o console do Firebase .
  2. Selecione Adicionar projeto .
  3. Selecione ou insira um nome de projeto.
  4. Siga as etapas de configuração restantes no console do Firebase e clique em Criar projeto (ou Adicionar Firebase, se estiver usando um projeto existente do Google).
  5. Na tela de visão geral do seu novo projeto, clique no ícone do Android para iniciar o fluxo de trabalho de configuração.
  6. Insira o nome do pacote do codelab: com.google.firebase.codelab.fcmandfiam

Adicione o arquivo google-services.json ao seu aplicativo

Depois de adicionar o nome do pacote, clique em Registrar aplicativo e em Baixar google-services.json para obter o arquivo de configuração do Firebase Android e copie o arquivo google-services.json para o diretório app em seu projeto. Após o download do arquivo, você pode clicar em Ignorar para as próximas etapas mostradas no console (elas já foram feitas para você no projeto build-android-start).

Adicione o plugin google-services ao seu aplicativo

O plug-in google-services usa o arquivo google-services.json para configurar seu aplicativo para usar o Firebase. A dependência do plug-in google-services e o próprio plug-in já devem ser adicionados aos arquivos de construção no nível do projeto e do aplicativo, respectivamente. Confirme as seguintes entradas:

construir.gradle

buildscript {
  ...
  dependencies {
    ...
    classpath 'com.google.gms:google-services:4.3.8'
  }
}

app/build.gradle

plugins {
  ...
  id: 'com.google.gms.google-services'
}

Adicionar dependências

FCM e FIAM exigem as seguintes dependências. Essas dependências já devem estar adicionadas ao arquivo de compilação no nível do aplicativo. Confirme se as seguintes dependências foram adicionadas:

app/build.gradle

dependencies {
  ...
  implementation platform('com.google.firebase:firebase-bom:28.4.2')
  implementation 'com.google.firebase:firebase-analytics'
  implementation 'com.google.firebase:firebase-messaging'
  implementation 'com.google.firebase:firebase-inappmessaging-display'
}

Sincronize seu projeto com arquivos Gradle

Para ter certeza de que todas as dependências estão disponíveis para seu aplicativo, você deve sincronizar seu projeto com arquivos gradle neste momento. Selecione Arquivo > Sincronizar projeto com arquivos Gradle na barra de ferramentas do Android Studio.

4. Identificadores de registro

Firebase Cloud Messaging e Firebase In App Messaging usam identificadores para enviar mensagens para aplicativos. O FCM usa um token de registro e o FIAM usa um ID de instalação.

  1. Em MainActivity.kt substitua TODO pelo código abaixo para registrar os identificadores necessários para enviar mensagens:
FirebaseMessaging.getInstance().token.addOnCompleteListener { regTokenTask ->
   if (regTokenTask.isSuccessful) {
       Log.d(TAG, "FCM registration token: ${regTokenTask.result}")
   } else {
       Log.e(TAG, "Unable to retrieve registration token",
           regTokenTask.exception)
   }
}
FirebaseInstallations.getInstance().id.addOnCompleteListener { installationIdTask ->
   if (installationIdTask.isSuccessful) {
       Log.d(TAG, "Firebase Installations ID: ${installationIdTask.result}")
   } else {
       Log.e(TAG, "Unable to retrieve installations ID",
           installationIdTask.exception)
   }
}
  1. Conecte seu dispositivo Android e clique em Executar ( executar.png )na barra de ferramentas do Android Studio. Tocar no botão Log Identifiers registrará o token de registro do FCM e o ID do Firebase Installations no logcat. A saída deve ficar assim:
D/FcmAndFiam: Firebase Installations ID: emMc5...AsJfb
  FCM registration token: emMc5LART6GV7...r0Q

5. Enviar mensagem FCM de teste

As mensagens do FCM podem ser enviadas do console do Firebase e da API REST do FCM. Neste codelab, redigiremos uma mensagem de notificação do FCM e a enviaremos ao nosso dispositivo. Mensagens de notificação são aquelas exibidas na área de notificação do sistema. Envie uma mensagem de teste do FCM:

  1. Certifique-se de que o aplicativo esteja em segundo plano (vá para a tela inicial)
  2. Vá para o console do Firebase e selecione Cloud Messaging na navegação esquerda
  3. Selecione Enviar sua primeira mensagem
  4. Adicione um título e corpo para a mensagem e clique em Enviar mensagem de teste

207ced65f5245ada.png

  1. Adicione o token de registro do FCM e clique em testar

f3556c6a8a6453fe.png

  1. Observe a notificação de exibição no dispositivo
  2. Tocar na notificação abre o aplicativo

6. Enviar mensagem de teste FIAM

O Firebase In App Messaging pode ser acionado como resultado de vários eventos do usuário. A mensagem de teste usa o evento de abertura do aplicativo para acionar a mensagem no aplicativo. Envie uma mensagem FIAM de teste por:

  1. Certifique-se de que o aplicativo esteja em segundo plano (vá para a tela inicial)
  2. Vá para o console do Firebase e selecione Mensagens no aplicativo na navegação esquerda
  3. Selecione Crie sua primeira campanha
  4. Selecione a campanha do banner superior e insira o título e o corpo da mensagem
  5. Clique em Testar no dispositivo

69f6ea5efff240d1.png

  1. Adicione o ID de instalação e clique em Testar

24b101edfab47144.png

  1. Reabrir aplicativo
  2. Observe na mensagem do aplicativo

7. Parabéns

Parabéns, você enviou mensagens FCM e FIAM com sucesso. Agora você sabe como interagir com seus usuários, estejam eles usando seu aplicativo em primeiro plano ou em segundo plano.

Leitura adicional

Qual é o próximo

  • Envie mensagens aos usuários em seu próprio aplicativo Android.

Documentos de referência