Nesse post vamos comentar de forma direta sobre algo que confunde muitos programadores no momento de entender e utilizar o Serviço de Notificações do Firebase.
Quando você quer enviar uma notificação para o seu app nativo, utilizando o serviço de Cloud Messaging do Firebase, nós podemos utilizar o envio de uma Notificação de Mensagem ou uma Notificação de Dados (DataMessaging).
Se referir as duas como sendo notificações não tem problema, mas o importante é você saber diferenciar no seu entendimento o que realmente são as duas e como um aplicativo funciona quando recebemos elas.
Notificação
Com o envio de uma Mensagem de Notificação, o aplicativo estando em segundo plano, ou seja, quando o aplicativo não está sendo executado, o app mostra a notificação automaticamente, basta somente fazer referencia do serviço de Notificação do Firebase no seu App.
Se o aplicativo estiver em primeiro plano, ou seja, o aplicativo está sendo utilizado pelo usuário, um método chamado onMessageReceived é ativado e nesse caso teremos que implementar um código para a notificação ser exibida.
As mensagens de notificação têm um conjunto predefinido de nome de chaves que não podem ser alterados.
Abaixo temos o corpo de uma notificação
{ "token":"bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...", "notification":{ "title":"Portugal vs. Denmark", "body":"great match!" } }
Perceba que no corpo dessa notificação temos o campo notification, e dentro desse campo temos outros campos (chave) chamados de title e body. Os nomes title e body não podem ser trocado por outros nomes, pois são predefinidos, assim como outros campos (chaves) que também estão disponíveis para você utilizar como sound e icon.
No site do Firebase quando você for enviar uma notificação de mensagem, poderá encontrar os campos como abaixo.
Na imagem acima quando você preencher o campo titulo com a informação “Teste” e o campo texto notificação com “Olá” o corpo da sua notificação ficará como abaixo
"notification":{
"title":"Teste",
"body":"Olá"
}
Caso queira aprender a implementar uma notificação no Android, acesse nossos Vídeos no Youtube, temos uma PlayList sobre notificaçãos para Android.
Dados ou DataMessaging
Com o envio de uma Notificação de Dados, para que o aplicativo possa exibir para o usuário essa notificação, precisamos implementar código, pois você pode enviar dados com os nomes das chaves personalizados e com outros campos que você pode definir.
Com Mensagem de Dados o método onMessageReceived é ativado com o aplicativo funcionando em primeiro e segundo plano, ou seja, você vai ter que implementar código para ver a notificação das duas formas. O que ocorre diferente da Notificação de Mensagem.
Na Mensagem de Dados o aplicativo é responsável pelo processamento de mensagens. As mensagens de dados têm pares de chave-valor personalizados.
{ "token":"bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...", "data":{ "Nome" : "Jone", "Sobrenome" : "Arce Franco", "Modulo" : "Módulo III - Notificações" } }
Veja que a diferença entre o corpo dessa mensagem e a outra que vimos anteriormente é que temos um campo chamado “data” , e sendo assim podemos inserir qualquer nome para nossos identificadores, como vimos (“Nome”, “Sobrenome”, “Modulo”)
É de muita importância para o seu aprendizado acessar o link abaixo e ler o conteúdo que o próprio Firebase Disponibiliza.
https://firebase.google.com/docs/cloud-messaging/concept-options?hl=pt-br
Caso queira se aprofundar em notificações, temos um curso para te ensinar acesse o link: https://jafapps.com.br/cursos-android/
Artigos Relacionados
Sobre o Autor
0 Comentários