Firebase Cloud Messaging : Restez à jour pour l'envoi des notifications push sur Android

Ecrit par le Mercredi 3 Avril 2019

Firebase Cloud Messaging : Restez à jour pour l'envoi des notifications push sur Android
L'année dernière, le 10 avril 2018 exactement, Google prévenait les développeurs d'un changement technique pour l'envoi et la réception des notifications push
GoodBarber a pris en compte ce changement en mettant à mis a jour le moteur Android de vos apps. 

Firebase Cloud Messaging, le système utilisé pour l'envoi et la réception des notifications push sera donc le seul système en vigueur à partir du 11 avril 2019. 

Cet article vous explique si vous avez besoin ou non de recompiler et soumettre une mise à jour de votre app dans le Play Store afin d'assurer la continuité du fonctionnement des notifications push dans votre application Android.

GoodBarber s'occupe de tout, et c'est bien comme ça :)

Vous êtes surement passé à coté de l'annonce de Google et c'est tout à fait normal. C'est le job de GoodBarber de veiller à ce que votre app Android s'adapte aux évolutions régulières proposées par Google (et Apple en ce qui concerne votre app iOS).

Quand on connait le rythme rapide de ces évolutions, c'est très rassurant de savoir que tous les abonnements à GoodBarber incluent cette maintenance.

Et, quand on y réfléchit, ça représente une économie financière non négligeable pour le propriétaire de l'app. Imaginez un peu si vous deviez demander à un développeur d'intervenir à chaque fois qu'il y a une modification coté Google ou Apple ! 

Voilà un atout supplémentaire quand on utilise un App Builder, et cet atout est bien souvent sous estimé ;)

Migration de GCM vers FCM : de quoi s'agit-il ?

En Avril dernier, Google a décidé de remplacer Google Cloud Messaging (GCM) au profit de Firebase Cloud Messaging (FCM).

Les 2 systèmes servent à gérer l'envoi et la réception des notifications push

GCM est le premier système qu'à conçu Google. GoodBarber a commencé à utiliser GCM dès 2011, avec GoodBarber V1 !
Depuis, Google a largement fait évoluer son infrastructure et demande aux développeurs d'utiliser FCM.

L'utilisation de FCM sera obligatoire pour tous les développeurs à partir du 11 avril 2019.

Notification push, c'est quoi ? Comment ça fonctionne ?

Firebase Cloud Messaging : Restez à jour pour l'envoi des notifications push sur Android
Une notification push est un message adressé à l'utilisateur d'une application mobile. Ce message est reçu directement sur le téléphone mobile de l'utilisateur. La réception, l'affichage et l'action associée à la consultation du message sont gérés par le système d'exploitation du téléphone.

Voici une explication simple du fonctionnement :

Etape 1 : L'éditeur d'une app (vous) rédige un message (notification push) pour l'envoyer à ses utilisateurs (téléphones). 
Une fois rédigé, l'éditeur transmet le message à un service de livraison des notifications push (Push Service Delivery).

Il existe plusieurs services de livraisons de notifications push. Par exemple, GoodBarber utilise :
- Firebase Cloud Messaging (FCM) : pour les applications natives Android et pour les PWAs consultées avec Chrome, Firefox, Opera ou Edge.
- Apple Push Notification System (APNs) : pour les applications natives iOS et pour les PWA consultées depuis Safari macOS.

Lors de la transmission de son message au Push Service Delivery, l'éditeur à la possibilité de spécifier des critères pour cibler des téléphones en particulier. 
Concrètement, ce sont toutes les options de ciblage auxquelles vous avez accès depuis la page User > Push > Envoyer de votre backoffice


Etape 2 : Le Push Delivery Service identifie les téléphones pour lesquelles il doit transmettre le message et il leur envoie.

Il s'agit des téléphones pour lesquelles l'utilisateur a accepté de recevoir les notifications push de votre app et qui sont dans la cible que vous avez définie lors de la rédaction de votre message.

Comment le service de livraison des messages connait les téléphones à qui envoyer une notification ?

Lorsqu'un utilisateur télécharge votre app pour la première fois sur son téléphone, un jeton de distribution (push token) est créé et attribué au téléphone. C'est ce token qui permet ensuite d'identifier le téléphone sur lequel la notification push doit être envoyée.

C'est le système de livraison des notifications qui est chargé d'attribuer le token au téléphone.

Dans le cas des applications Android de GoodBarber, avant, c'était GCM qui attribuait les tokens de push, maintenant c'est FCM

Migration de GCM vers FCM : dois-je recompiler et mettre à jour mon app Android ?

Firebase Cloud Messaging : Restez à jour pour l'envoi des notifications push sur Android
A partir du 11 avril 2019, Google va éteindre GCM. Pour savoir si la fermeture de GCM a une implication sur votre app, il faut tout d'abord vérifier quelle est la version du moteur Android qui a été utilisée pour compiler la dernière version de votre app.
Nous parlons bien sûr de la dernière version de votre app qui est qui est proposée au téléchargement dans Google Play.

Pour le savoir, rendez-vous dans le menu Publier > Journal > Versions
A coté du numéro de version, entre parenthèses, vous avez le numéro de révision du moteur Android utilisé pour compiler votre app.

Si le numéro de révision est supérieur ou égal à 6035, alors vous n'avez rien à faire. Votre app Android utilise FCM. Les anciens utilisateur et les nouveaux utilisateurs de votre app reçoivent normalement les notifications push que vous envoyez.

Si le numéro de révision est inférieur à 6035, alors certains utilisateurs ne recevront pas vos notifications push après le 11 avril 2019. Pour y remédier, re-compilez votre app Android et soumettez une mise à jour dans le Play Store.

Si le numéro de révision est inférieur à 6035, voici précisément ce qui va passer après le 11 avril :
- tous les utilisateurs qui ont téléchargé l'app avant le 11 avril 2019 continuerons de recevoir correctement vos notifications push après cette date. 
En effet, quand ils ont téléchargé l'app, GCM était encore en fonctionnement. GCM leur a attribué un token, et, bonne nouvelle, les tokens attribués par GCM sont compatibles avec FCM !
- pour tous les utilisateurs qui téléchargeront votre app après le 11 avril 2019, votre app va tenter de contacter GCM pour obtenir un token de push. Or, GCM sera éteint et l'app n'obtiendra aucune réponse :(
Tous ces utilisateurs ne recevront pas vos notifications push.


En résumé, si vous voyez une alerte bleu en haut des pages de votre backoffice, alors vous devez agir. 
Vérifiez avec quelle version du moteur Android votre app a été compilée. 
Si c'est 6035 ou supérieur, vous n'avez rien à faire.
Si c'est inférieur, re-compilez votre app et soumettez une mise à jour. 



Entrez votre adresse email