Quero criar uma aplicação de plataforma no Amazon Simple Notification Service (Amazon SNS) para enviar notificações push para dispositivos Android.
Resolução
As notificações por push do Amazon SNS não estão disponíveis em todas as regiões AWS. Para obter mais informações, consulte Regiões compatíveis com aplicações móveis.
Pré-requisitos: Você precisa ter um projeto do Firebase e uma aplicação Android válida registrada no Firebase. Para obter instruções, consulte Etapa 1: Crie um projeto do Firebase e registre sua aplicação no site do Firebase. Você também precisa ter credenciais válidas do Firebase Cloud Messaging (FCM), incluindo uma credencial de token de projeto do FCM.
Recupere as credenciais de token do seu projeto FCM
Conclua as seguintes etapas:
- Abra o console do Firebase e escolha seu projeto.
- No painel de navegação, escolha o ícone de engrenagem e, em seguida, escolha Configurações do projeto.
- Escolha a guia Contas de serviço.
- Escolha Gerar nova chave privada para baixar o arquivo de chave privada formatado em JSON e criar uma aplicação da plataforma Android que tenha autenticação baseada em token.
Crie a aplicação da plataforma Android
Ao criar uma nova aplicação de plataforma, escolha a autenticação baseada em token para permitir que o Amazon SNS use a API HTTP v1 do Google FCM. Se você tiver uma aplicação de plataforma que usa a API legada obsoleta do FCM, atualize sua aplicação para usar a autenticação baseada em token. Para obter mais informações, consulte Migrar de APIs legadas do FCM para HTTP v1 no site do Firebase.
Você pode usar o console do Amazon SNS, a AWS Command Line Interface (AWS CLI) ou a API do Amazon SNS para criar a aplicação da plataforma.
Use o console do Amazon SNS
Para usar o console do Amazon SNS, consulte Criar uma aplicação de plataforma.
Em Plataforma de notificação por push, escolha Firebase Cloud Messaging (FCM). Em Método de autenticação, escolha Token. Em seguida, escolha Escolher arquivo para fazer o upload do arquivo de chave privada formatado em JSON.
Use a AWS CLI
Observação: Se você receber erros ao executar comandos da AWS CLI, consulte Solucionar erros da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.
Conclua as seguintes etapas:
-
Seu arquivo deve estar em formato de string e você não pode usar caracteres especiais. Para formatar o arquivo, execute o seguinte comando no mesmo diretório em que seu arquivo de chave privada formatado em JSON está localizado:
SERVICE_JSON=`jq @json <<< cat "private_key_JSON_file"`
Observação: Substitua private_key_JSON_file pelo nome do seu arquivo de chave privada.
-
Execute o comando create-platform-application no mesmo diretório em que seu arquivo de chave está:
aws sns create-platform-application --name Your_Application_Name --platform GCM --attributes PlatformCredential=$SERVICE_JSON
Observação: Substitua Your_Application_Name pelo nome da sua aplicação.
O ARN da sua aplicação de plataforma aparece na saída do comando.
Exemplo:
{
"PlatformApplicationArn": "arn:aws:sns:us-east-1:XXXXXXXXXXXX:app/GCM/Your_Application_Name"
}
-
Como prática recomendada, configure notificações de eventos e registro do status de entrega.
Use uma API do Amazon SNS
Use a operação da API CreatePlatformApplication.
Enviar notificações por push
Para usar a aplicação da plataforma Android para enviar notificações por push, consulte Notificações push móveis.
Informações relacionadas
Como faço para criar uma aplicação de plataforma do APNs para enviar notificações por push no Amazon SNS usando a AWS CLI?
Adding device tokens or registration IDs
Publishing to a mobile device
Publishing to a topic
Platform response codes