Que sont les notifications silencieuses ?
Les notifications silencieuses vous permettent de réveiller votre application et d’effectuer des tâches en arrière-plan—comme la synchronisation ou l’actualisation de données—sans afficher de message visible ni jouer de son. Sur iOS, celles-ci sont appelées Notifications en arrière-plan, et sur Android, elles sont connues sous le nom de Notifications de données. Ensemble, elles sont souvent appelées pushes silencieux et se comportent différemment des notifications normales et visibles.Limitations
- Les applications ne peuvent pas recevoir de pushes silencieux si :
- iOS : L’application a été fermée par l’utilisateur, par exemple en la faisant glisser depuis le sélecteur d’applications. (Voir support Apple).
- Android : L’application a été forcée à s’arrêter via les paramètres de l’appareil ou automatiquement par certains fabricants lors du glissement. (Comportement de force-stop Android).
- La livraison n’est pas garantie :
- Apple et Google traitent tous deux les notifications silencieuses comme meilleur effort. iOS peut retarder ou supprimer la livraison en mode Économie d’énergie, avec l’actualisation des applications en arrière-plan désactivée ou si l’application a été fermée par l’utilisateur. Android peut limiter ou regrouper la livraison selon les règles Doze ou d’économie d’énergie des OEM.
- C’est pourquoi les notifications silencieuses ne doivent jamais être utilisées pour des mises à jour critiques.
- Utilisateurs abonnés uniquement : Le SDK OneSignal envoie des notifications de données uniquement aux Abonnements abonnés. Pour atteindre les utilisateurs non abonnés, consultez cette solution de contournement iOS SDK.
- Support limité pour les SDK multiplateformes :
- Les notifications silencieuses doivent être gérées en code natif (Java/Kotlin pour Android, Swift/Obj-C pour iOS).
- iOS nécessite l’implémentation de
application:didReceiveRemoteNotification:fetchCompletionHandler:. - Android nécessite l’implémentation d’une Extension de service de notification.
Envoi de notifications silencieuses depuis OneSignal
Suivez ces étapes pour envoyer une notification silencieuse depuis OneSignal :Omettez les contenus
Supprimez les contenus visibles du message. Cela inclut :
- API :
contents,headings,subtitledans votre requête API Create notification. - Tableau de bord : Message, Titre, Sous-titre
Définissez content_available
- API : Définissez
content_availablesurtrue. - Tableau de bord : Cochez Content available sous “Send to Apple iOS”. Ceci est applicable à toutes les plateformes et indique simplement à notre système qu’aucun message n’est envoyé.
Exemple de payload API
Configuration spécifique à la plateforme
Configuration des notifications en arrière-plan iOS
Pour gérer les notifications en arrière-plan, votre application iOS doit avoir la capacité Background Modes > Remote Notifications activée dans Xcode. Cela est généralement inclus si vous avez suivi la Configuration du SDK mobile. Pour traiter la notification, implémentez la méthodeAppDelegate application(_:didReceiveRemoteNotification:fetchCompletionHandler:).
Documentation Apple :
Configuration des notifications de données Android
Gérez les notifications de données sur Android en utilisant l’Extension de service de notification. Cela vous permet :- De traiter les notifications tant que l’application n’a pas été forcée à s’arrêter
- De personnaliser la façon dont les notifications sont affichées ou supprimées
Envoi de notifications VoIP
Les notifications VoIP sont prises en charge mais nécessitent une configuration supplémentaire en dehors des SDK OneSignal standard. OneSignal n’enregistre pas automatiquement les jetons VoIP.Guide de configuration des notifications VoIP
Configurez les notifications push VoIP pour les appels en temps réel sur iOS.
FAQ
Les notifications silencieuses peuvent-elles être utilisées pour détecter des désinstallations ou des désabonnements ?
Pas de manière fiable. Les notifications silencieuses sont au mieux-effort et ne sont pas garanties d’être livrées, comme expliqué dans la section Limitations. À la place :- Envoyez des notifications visibles (avec contenu) à tous vos utilisateurs au moins une fois par mois.
- Envoyez éventuellement des notifications silencieuses comme vérification supplémentaire.
Les livraisons confirmées fonctionnent-elles avec les notifications silencieuses ?
Non. Les livraisons confirmées nécessitent l’exécution d’un callback par le SDK lorsque la notification est affichée. Les notifications silencieuses ne sont pas affichées, donc le callback de réception du SDK n’est jamais déclenché.Puis-je utiliser des notifications silencieuses pour mesurer combien d’utilisateurs sont joignables ?
Non, pas de manière fiable. Les notifications silencieuses n’ont pas de livraison garantie.- La livraison n’est pas garantie — Apple et Google traitent tous deux les notifications silencieuses comme meilleur effort et peuvent les retarder ou les supprimer. Par exemple, iOS les supprimera si l’application est fermée (force quit) et Android et iOS les limiteront selon les règles d’économie d’énergie.
- La livraison n’est pas confirmée — les livraisons confirmées ne fonctionnent pas avec les notifications silencieuses, donc il n’y a aucun moyen de savoir quels utilisateurs ont réellement reçu le push.
Extensions de service
Gérez le traitement des notifications en code natif sur iOS et Android.
Abonnements
Comprendre les types d’abonnements et leur connexion aux utilisateurs.
API de création de message
Envoyez des notifications par programmation, y compris les pushes silencieux.