Mes notifications push mobiles Firebase Cloud Messaging (FCM) n’ont pas pu être envoyées via Amazon Simple Notification Service (Amazon SNS).
Résolution
Configurer et afficher les attributs du statut de livraison des notifications push pour Amazon CloudWatch Logs
Suivez les instructions de la section Comment résoudre les problèmes liés aux échecs des notifications push mobiles FCM (Firebase Cloud Messaging) dans Amazon SNS ?
Vérifier que l'appareil peut se connecter aux serveurs de notifications push
Si le problème se produit uniquement sur un appareil spécifique, assurez-vous que celui-ci peut se connecter aux serveurs de notifications push. Par exemple, votre pare-feu peut restreindre le trafic permettant aux appareils mobiles de se connecter à FCM sur votre réseau. Pour plus d'informations, consultez la section Ports FCM et votre pare-feu (langue française non garantie) sur le site Web de Firebase.
Vérifier si le point de terminaison de plateforme associé à l'appareil est activé
Consultez les journaux dont la livraison des notifications push a échoué pour trouver la valeur "providerResponse": "Endpoint is disabled".
Exemple :
{ "notification": { "messageMD5Sum": "c8c339cf07dc39c9388253dgc81f257",
"messageId": "fg207f98-0244-6767-96e2-45b1fg451gg8",
"timestamp": "2023-06-23 16:27:51.889"
},
"delivery": {
"deliveryId": "76ab7dcd-f444-5b4f-9d1b-24ea8863d9bc",
"destination": "arn:aws:sns:us-east-1:123456789101:endpoint/GCM/MyAndroidApp/682dc992-a47f-45f7-b980-97727cce0a9c",
"providerResponse": "Endpoint is disabled",
"dwellTimeMs": 28,
"attempts": 1,
"token": "ojnco9nc9weucn9encx9ewunc9nu9w9euncec9necn9xexnexex9encewcerve0f0o0dmco9j",
"statusCode": 400
},
"status": "FAILURE"
}
Si vous voyez la valeur "providerResponse": "Endpoint is disabled" dans les journaux d'échec de livraison, alors le point de terminaison de la plateforme associé à l'appareil est désactivé. Pour résoudre ce problème, consultez la section Comment résoudre les problèmes liés à l'application désactivée de ma plateforme de notifications push avec Amazon SNS ?
Pour plus d'informations, consultez la section Réactivation d'un point de terminaison de plateforme associé à un jeton d'appareil non valide.
Vérifier que vous pouvez recevoir des notifications directement de FCM
Pour déterminer si le problème se situe du côté du point de terminaison Amazon SNS ou du côté de l'application client, envoyez un message de test sur la console FCM. Pour obtenir des instructions, consultez la section Envoyer un message de notification sur le site Web de Firebase.
Vérifier que vous utiliser le type de message FCM approprié
FCM prend en charge les messages de notification et les messages de données. Le SDK FCM gère automatiquement les messages de notification. L'application cliente gère les messages de données. Assurez-vous de définir la clé de données avec vos paires clé-valeur personnalisées pour envoyer des données utiles à l'application cliente. Pour plus d'informations, consultez la section Types de messages Firebase Cloud Messaging sur le site Web de Firebase. Consultez également la section Envoi de messages propres à une plateforme.
Utiliser le SDK FCM pour afficher les notifications pour votre application cliente
Assurez-vous d'utiliser la clé de notification avec l'ensemble prédéfini d'options clé-valeur pour le message de notification. Pour plus d'informations, consultez la section Messages de notification sur le site Web de Firebase.
Identifier et résoudre les problèmes liés aux codes d'erreur et de réponse aux notifications push
Suivez les étapes suivantes :
- Consultez vos journaux de statut d’envois pour détecter les envois de notifications push ayant échoué ("status": "FAILURE").
- Vérifiez les journaux d’envoi des notifications push ayant échoué pour détecter tout autre code de réponse de la plateforme.
- Suivez l'action recommandée qui est répertoriée dans la section Codes d'erreur du site Web de Firebase.
Résoudre les problèmes liés aux messages qui indiquent une livraison réussie mais qui ne s'affichent pas sur l'appareil
Soit l'appareil n'a pas reçu la notification, soit celle-ci ne s'affiche pas dans la barre de notification du système. Pour en déterminer la cause, incluez des instructions de journal dans le gestionnaire de messages de l'application.
Si vous recevez des messages sous forme de charge utile de notification mais pas sous forme de données utiles, passez en revue le gestionnaire de messages dans le code de l'application client. Seul le code de l'application du client gère les notifications de données. Assurez-vous que la notification est envoyée dans la barre de notification du système.
Pour plus d'informations, consultez la page Recevoir des messages dans les applications Android sur le site Web de Firebase.
Résoudre les problèmes liés aux appareils Android
Pour les appareils Android, utilisez la page de diagnostic Android de FCM pour vérifier le statut de livraison et résoudre le problème de manière plus approfondie. Pour ouvrir la page de diagnostic du FCM, composez le code *# *#426# *#* depuis le numéroteur Google. Pour plus d'informations, consultez la rubrique sur les diagnostics FCM pour Android (langue française non garantie) sur le site Web de Firebase.
Informations connexes
Comment créer une application de plateforme Android dans Amazon SNS pour les notifications push ?
Comment créer une application de plateforme APNs pour envoyer des notifications push dans Amazon SNS à l'aide de l'AWS CLI ?