1. Antes de começar
Neste codelab, você aprenderá a adicionar a capacidade de interagir com os usuários, estejam eles usando seu aplicativo em primeiro plano ou em segundo plano.
Pré-requisitos
Nenhum
O que você vai aprender
- Adicione o Firebase ao seu aplicativo Android
- Adicionar dependências FCM e FIAM
- Envie uma mensagem de teste do FCM para seu aplicativo
- Envie uma mensagem de teste FIAM para seu aplicativo
O que você precisará
- Android Studio 4.1
- Dispositivo ou emulador Android
2. Comece
Obtenha o código de exemplo
Clone o repositório do GitHub na linha de comando:
Importar o aplicativo inicial
No Android Studio, selecione o codelab-fcm-and-fiam
( ). Seria o clonado no passo anterior ( File > Open > .../codelab-fcm-and-fiam).
Agora você deve ter o projeto FcmAndFiam aberto no Android Studio. Se você vir 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
Adicionar o Firebase ao projeto
- Acesse o console do Firebase .
- Selecione Adicionar projeto .
- Selecione ou insira um nome de projeto.
- 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).
- Na tela de visão geral do seu novo projeto, clique no ícone do Android para iniciar o fluxo de trabalho de configuração.
- Digite 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 Register App e depois em Download google-services.json para obter o arquivo de configuração do Firebase Android e copie o arquivo google-services.json no diretório do 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 plug-in de serviços do Google 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 compilação no nível do projeto e do aplicativo, respectivamente. Confirme as seguintes entradas:
build.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 requerem as seguintes dependências. Essas dependências já devem ser 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 Log
Tanto o Firebase Cloud Messaging quanto o Firebase In App Messaging usam identificadores para enviar mensagens aos aplicativos. O FCM usa um token de registro e o FIAM usa um ID de instalação.
- Em
MainActivity.kt
substitua o TODO pelo código abaixo para registrar os identificadores necessários para o envio de 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)
}
}
- Conecte seu dispositivo Android e clique em Executar (
) na barra de ferramentas do Android Studio. Tocar no botão Log Identifiers registrará o token de registro do FCM e o Firebase Installations ID no logcat. A saída deve ficar assim:
D/FcmAndFiam: Firebase Installations ID: emMc5...AsJfb
FCM registration token: emMc5LART6GV7...r0Q
5. Envie a mensagem de teste do FCM
As mensagens do FCM podem ser enviadas do console do Firebase e da API REST do FCM. Neste codelab vamos compor uma mensagem de notificação do FCM e enviá-la para o nosso dispositivo. As mensagens de notificação são aquelas exibidas na área de notificação do sistema. Envie uma mensagem de teste do FCM por:
- Verifique se o aplicativo está em segundo plano (vá para a tela inicial)
- Vá para o console do Firebase e selecione Cloud Messaging na navegação à esquerda
- Selecione Enviar sua primeira mensagem
- Adicione um título e um corpo para a mensagem e clique em Enviar mensagem de teste
- Adicione o token de registro do FCM e clique em testar
- Observe a notificação de exibição no dispositivo
- 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 de teste FIAM por:
- Verifique se o aplicativo está em segundo plano (vá para a tela inicial)
- Vá para o console do Firebase e selecione In-App Messaging na navegação à esquerda
- Selecione Criar sua primeira campanha
- Selecione a campanha de banner superior e insira o título e o corpo da mensagem
- Clique em Testar no dispositivo
- Adicione o ID de instalações e clique em Testar
- Reabrir aplicativo
- Observar 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 para usuários em seu próprio aplicativo Android.