Il peut s'avérer difficile d'optimiser le trafic réseau envoyé par les programmes serveur vers votre application. Une solution à ce problème consiste à interroger régulièrement le serveur pour rechercher les mises à jour. Cette approche peut gaspiller la connexion réseau et l'alimentation lorsque votre application démarre le signal radio d'un appareil seulement pour recevoir une réponse indiquant qu'aucune nouvelle donnée n'est disponible. Il serait beaucoup plus efficace pour le serveur d'informer votre application lorsqu'il dispose de nouvelles données, mais jusqu'à maintenant, déterminer comment envoyer une notification depuis le serveur à des milliers d'appareils n'a pas été une mince affaire.
Le service Firebase Cloud Messaging (FCM) résout ce problème de communication en permettant à vos serveurs d'envoyer des notifications aux instances de votre application où qu'elles soient installées. Cela permet d'améliorer l'efficacité du réseau et de réduire la consommation d'énergie.
Dans cette leçon, vous allez apprendre à appliquer le service FCM afin de réduire l'utilisation du réseau pour les actions déclenchées par le serveur, et l'utilisation de la batterie.
Envoyer des mises à jour de serveur avec FCM
Firebase Cloud Messaging (FCM) est un mécanisme simple utilisé pour transmettre de courts messages depuis un serveur d'applications vers votre application. Avec FCM, le serveur d'applications utilise un mécanisme de transmission de messages pour informer votre application que de nouvelles données sont disponibles. Cette approche élimine le trafic réseau que votre application pourrait générer, en évitant de contacter un serveur backend pour obtenir de nouvelles données alors qu'aucune donnée n'est disponible.
À titre d'exemple, l'application FCM peut être utilisée pour lister les sessions animées par des intervenants à l'occasion d'une conférence. Lorsque des sessions sont mises à jour sur votre serveur, il envoie un bref message à votre application indiquant que des mises à jour sont disponibles. Votre application peut ensuite appeler le serveur pour mettre à jour les sessions sur l'appareil uniquement lorsque le serveur dispose de nouvelles données.
Il est plus efficace d'utiliser FCM que de demander à votre application de rechercher des modifications sur le serveur. Le service FCM élimine les connexions inutiles induites par des recherches ne renvoyant aucune mise à jour, et cela évite d'exécuter régulièrement des requêtes réseau susceptibles d'entraîner l'activation du signal radio d'un appareil. Comme FCM peut être utilisé par de nombreuses applications, son utilisation dans votre application réduit le nombre total de connexions réseau nécessaires sur un appareil et permet au signal radio de l'appareil de se mettre en veille plus souvent.