Push Notification — Parte III: Implementando no Xamarin.Android
Nada melhor do que colocar em prática novos conhecimentos, então vamos iniciar a terceira parte do nosso tutorial. Se você caiu neste link direto e não está acompanhando a série já realizamos duas partes: a primeira criamos um conta no Firebase e a segunda fizemos a implementação de push notification em um iOS.
Então vamos a terceira parte da nossa série, iremos implementar um aplicativo Android que esteja preparado para receber notificações do Firebase. Para criar este app vamos manter utilizando o Xamarin mas como já dito em postagens anteriores o processo é muito semelhante usando outras tecnologias, então vamos lá!
Passo 1:
O primeiro passo é criar o projeto, iremos nomeá-lo de HelloFirebaseAndroid, como demostrado na Figura1.
Em seguida definiremos a versão mínima de Android que nosso aplicativo irá rodar. Neste projeto a versão mínima será 5.0.
Após criado o projeto, será apresentada uma estrutura semelhante a imagem abaixo:
Passo 2:
Com o projeto criado agora iremos baixar as bibliotecas necessárias em nosso projeto. Utilizando o Manage Nuget instale o pacote Xamarin.Firebase.Messaging, após instalação as bibliotecas estarão disponíveis na aba References, Figura 5.
Passo 3:
Agora iremos inserir o arquivo disponibilizado pelo Firebase, o arquivo gerado no projeto Android, este processo você pode relembrar na parte I desta série. Na raiz do projeto adicione o arquivo google-services.json. Como no exemplo abaixo.
Passo 4:
Abra seu arquivo Android.Manifest e adicione o trecho abaixo entre <application> </application>, com isto seu aplicativo receberá as notificações do Firebase.
Passo 5:
Agora crie uma classe com nome de MyFireMessagingService.cs, o método OnTokenRefresh será executado sempre que um novo token for gerado. No método SendRegistrationToServer pode ser implementado de acordo com a necessidade da sua aplicação, por exemplo: armazenar o token gerado pelo Firebase em sua base de dados.
Em seguida crie outra classe denominada MyFirebaseIIDService.cs, como demonstrado abaixo. O método OnMessageReceived é executado sempre que uma notificação é enviada para o aplicativo. O objeto message contém o conteúdo da notificação, você pode tratá-lo e utilizar na lógica de sua aplicação. É possível personalizar o design da sua notificação ou até mesmo tornar sua notificação silenciosa. Se deseja ter uma notificação do tipo silenciosa basta apenas não utilizar o método SendNotificatios.
Passo 6: Criado as classes você deve registrar seu aplicativo junto ao Firebase. No MainActivity.cs dentro do método OnCreate insira o código abaixo. Caso você queira registrar seu aplicativo em um tópico utilize FirebaseMessaging.Instance.SubscribeToTopic(“nomeTopico”), se sua aplicação existir tópicos basta excluir esta linha.
Passo 7:
Agora basta compilar sua aplicação. Na parte V da nossa série será demostrado como enviar as notificações para seu aplicativo. Espero que tenham gostado. Até a próxima!