Passer au contenu principal

Vue d’ensemble

Ce guide explique comment intégrer les notifications push OneSignal dans une application .NET MAUI. Il couvre tout, de l’installation à la configuration et à la gestion des service workers.

Prérequis

  • .NET 7.0+
  • Visual Studio 2019 ou version plus récente
  • Application et plateforme OneSignal configurées
Prérequis iOS
  • macOS avec Xcode 14+ (les instructions de configuration utilisent Xcode 16.2)
  • Appareil avec iOS 12+, iPadOS 12+, ou simulateur Xcode exécutant iOS 16.2+
  • CocoaPods 1.16.2+
Prérequis Android
  • Appareil ou émulateur Android 7.0+ avec Google Play Store (Services) installé

Configurer votre application OneSignal et votre plateforme

Configuration requise pour les notifications push Pour commencer à envoyer des notifications push avec OneSignal, vous devez d’abord configurer votre application OneSignal avec toutes les plateformes que vous prenez en charge—Apple (APNs), Google (FCM), Huawei (HMS), et/ou Amazon (ADM).
Si votre organisation possède déjà un compte OneSignal, demandez à être invité avec un rôle administrateur pour configurer l’application. Sinon, inscrivez-vous pour un compte gratuit pour commencer.
Vous pouvez gérer plusieurs plateformes (iOS, Android, Huawei, Amazon, Web) sous une seule application OneSignal.
1

Créer ou sélectionner votre application

  • Pour ajouter des plateformes à une application existante, allez dans Settings > Push & In-App dans le tableau de bord OneSignal.
  • Pour repartir de zéro, cliquez sur New App/Website et suivez les instructions.

L'exemple montre la création d'une nouvelle application.

2

Configurer et activer une plateforme

  • Choisissez un nom clair et reconnaissable pour votre application et votre organisation.
  • Sélectionnez la ou les plateformes que vous souhaitez configurer (iOS, Android, etc.).
  • Cliquez sur Next: Configure Your Platform.

Exemple de configuration de votre première application, organisation et canal OneSignal.

3

Configurer les identifiants de plateforme

Suivez les instructions en fonction de vos plateformes :Cliquez sur Save & Continue après avoir saisi vos identifiants.
4

Choisir le SDK cible

Sélectionnez le SDK qui correspond à votre plateforme de développement (par exemple, iOS, Android, React Native, Unity), puis cliquez sur Save & Continue.

Sélectionnez le SDK que vous utilisez pour accéder à la documentation.

5

Installer le SDK et enregistrer votre App ID

Une fois votre plateforme configurée, votre OneSignal App ID sera affiché. Copiez et enregistrez cet ID—vous en aurez besoin lors de l’installation et de l’initialisation du SDK.Si vous collaborez avec d’autres personnes, utilisez le bouton Invite pour ajouter des développeurs ou des membres de l’équipe, puis cliquez sur Done pour terminer la configuration.

Enregistrez votre App ID et invitez des membres d'équipe supplémentaires.

Une fois terminé, suivez le guide d’installation du SDK pour votre plateforme sélectionnée afin de terminer l’intégration de OneSignal.

Configuration du SDK

1. Ajouter le SDK

En utilisant la CLI .NET :
bash
  dotnet add package OneSignalSDK.DotNet

2. Initialiser le SDK

Xamarin Forms n’est plus pris en charge au-delà de la version 5.0.2 de notre SDK .NET. Microsoft propose des guides pour migrer vers Maui ici, si nécessaire.
Initialisez OneSignal dans le fichier App.xaml.cs. Remplacez YOUR_APP_ID par votre ID d’application OneSignal trouvé dans votre tableau de bord OneSignal Paramètres > Clés et ID.
Si vous n’avez pas accès à l’application OneSignal, demandez à vos Membres de l’équipe de vous inviter.
C#
using OneSignalSDK.DotNet;
using OneSignalSDK.DotNet.Core;
using OneSignalSDK.DotNet.Core.Debug;

public App() {
  InitializeComponent();

  // Enable verbose OneSignal logging to debug issues if needed.
  OneSignal.Debug.LogLevel = LogLevel.VERBOSE;

  // OneSignal Initialization
  OneSignal.Initialize("YOUR_APP_ID");

  // RequestPermissionAsync will show the notification permission prompt.
  // We recommend removing the following code and instead using an In-App Message to prompt for notification permission (See step 5)
  OneSignal.Notifications.RequestPermissionAsync(true);

  MainPage = new AppShell();
}

3. Ajouter une extension de service iOS

Microsoft propose un guide sur la génération d’une extension de service de notification ici, en utilisant Visual Studio et Visual Studio pour Mac, mais n’a actuellement aucune orientation sur la façon de créer cela pour VSCode. Si vous générez une extension de service en suivant le guide ci-dessus, vous pouvez suivre le code de notre projet exemple disponible sur Github
C#
using System;
using Foundation;
using OneSignalSDK.DotNet;
using OneSignalSDK.DotNet.iOS;
using UIKit;
using UserNotifications;

namespace OneSignalNotificationServiceExtension
{
    [Register("NotificationService")]
    public class NotificationService : UNNotificationServiceExtension
    {
        Action<UNNotificationContent> ContentHandler { get; set; }
        UNMutableNotificationContent BestAttemptContent { get; set; }
        UNNotificationRequest ReceivedRequest { get; set; }

        protected NotificationService(IntPtr handle) : base(handle)
        {
            // Note: this .ctor should not contain any initialization logic.
        }

        public override void DidReceiveNotificationRequest(UNNotificationRequest request, Action<UNNotificationContent> contentHandler)
        {
            ReceivedRequest = request;
            ContentHandler = contentHandler;
            BestAttemptContent = (UNMutableNotificationContent)request.Content.MutableCopy();

            NotificationServiceExtension.DidReceiveNotificationExtensionRequest(request, BestAttemptContent, contentHandler);
        }

        public override void TimeWillExpire()
        {
            // Called just before the extension will be terminated by the system.
            // Use this as an opportunity to deliver your "best attempt" at modified content, otherwise the original push payload will be used.

            NotificationServiceExtension.ServiceExtensionTimeWillExpireRequest(ReceivedRequest, BestAttemptContent);

            ContentHandler(BestAttemptContent);
        }
    }
}

Configuration Android

Assurez-vous que votre application OneSignal est configurée pour la plateforme Android en utilisant vos identifiants Firebase. Configurez vos icônes de notification pour qu’elles correspondent à l’image de marque de votre application. Si cette étape est ignorée, une icône de cloche par défaut s’affichera pour vos notifications push. Compiler pour Android À ce stade, vous devriez pouvoir compiler et exécuter votre application sur un appareil Android physique ou un émulateur sans problème.
Après avoir confirmé que votre compilation Android fonctionne :

Configuration iOS

Assurez-vous que votre application OneSignal est configurée pour la plateforme iOS en utilisant soit le Jeton p8 (Recommandé) ou le Certificat p12. Suivez ces étapes pour ajouter les notifications push à votre application iOS, y compris la prise en charge des Badges, de la Livraison confirmée et des images.

1. Ajouter la capacité Push Notifications à la cible de l’application

La capacité Push Notifications permet à votre application d’enregistrer un jeton push et de recevoir des notifications.
  1. Ouvrez le fichier .xcworkspace de votre application dans Xcode.
  2. Sélectionnez votre cible d’application > Signing & Capabilities
  3. Cliquez sur + Capability et ajoutez la capacité Push Notifications

La cible de l'application reçoit la capacité Push Notifications.

2. Ajouter la capacité Background Modes à la cible de l’application

Cela permet à votre application de se réveiller en arrière-plan lorsque des notifications push arrivent.
  1. Ajoutez la capacité Background Modes
  2. Activez Remote notifications

La cible de l'application reçoit le mode d'exécution en arrière-plan Remote Notifications.

3. Ajouter la cible de l’application à un App Group

Les App Groups permettent le partage de données entre votre application et le Notification Service Extension. Requis pour la Livraison confirmée et les Badges.
  • Si vous n'avez PAS d'App Group configuré
  • Si vous avez déjà un App Group
  1. Ajoutez la capacité App Groups
  2. Dans la capacité App Groups, cliquez sur +
  3. Ajoutez un nouvel ID de conteneur au format : group.your_bundle_id.onesignal
  • Conservez le préfixe group. et le suffixe .onesignal. Remplacez your_bundle_id par l’identifiant de bundle de votre application.
  • Par exemple, l’identifiant de bundle com.onesignal.MyApp aura le nom de conteneur group.com.onesignal.MyApp.onesignal.

La cible de l'application fait partie de l'App Group.

Le nom de votre App Group doit correspondre exactement à l’orthographe et à la casse de votre ID de bundle sur toutes les cibles.

4. Ajouter le Notification Service Extension

Le Notification Service Extension (NSE) permet les notifications enrichies et les analyses de Livraison confirmée.
  1. Dans Xcode : File > New > Target…
  2. Sélectionnez Notification Service Extension, puis Next.
  3. Définissez le nom du produit sur OneSignalNotificationServiceExtension et appuyez sur Finish.
  4. Appuyez sur Don’t Activate sur l’invite Activate scheme.

Sélectionnez la cible Notification Service Extension.

Nommez le Notification Service Extension.

Annulez l'activation pour continuer le débogage de la cible de votre application.

Définissez le Minimum Deployment Target de OneSignalNotificationServiceExtension pour qu’il corresponde à votre application principale (iOS 15+ recommandé).
Si vous utilisez CocoaPods, définissez également la version de déploiement dans votre Podfile.

Définissez la même cible de déploiement que l'application principale.

5. Ajouter la cible NSE à l’app group

Utilisez le même ID d’App Group que vous avez ajouté à l’étape 3.
  1. Allez dans OneSignalNotificationServiceExtension > Signing & Capabilities
  2. Ajoutez App Groups
  3. Ajoutez exactement le même ID de groupe
Si vous utilisez un nom d’App Group personnalisé et non group.your_bundle_id.onesignal, assurez-vous d’ajouter votre ID d’App Group à la fois dans le Info.plist de l’App Target et du OneSignalNotificationServiceExtension Target ! Voir l’étape 3 pour plus d’informations.

Le NSE appartient maintenant au même app group que votre cible d'application.

6. Mettre à jour le code NSE

  1. Naviguez vers le dossier OneSignalNotificationServiceExtension
  2. Remplacez le contenu du fichier NotificationService.swift ou NotificationService.m par ce qui suit :

Naviguez vers votre fichier NotificationService.

import UserNotifications
import OneSignalExtension

class NotificationService: UNNotificationServiceExtension {
    var contentHandler: ((UNNotificationContent) -> Void)?
    var receivedRequest: UNNotificationRequest!
    var bestAttemptContent: UNMutableNotificationContent?

    // Note this extension only runs when `mutable_content` is set
    // Setting an attachment or action buttons automatically sets the property to true
    override func didReceive(_ request: UNNotificationRequest, withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void) {
        self.receivedRequest = request
        self.contentHandler = contentHandler
        self.bestAttemptContent = (request.content.mutableCopy() as? UNMutableNotificationContent)

        if let bestAttemptContent = bestAttemptContent {
            // DEBUGGING: Uncomment the 2 lines below to check this extension is executing
//            print("Running NotificationServiceExtension")
//            bestAttemptContent.body = "[Modified] " + bestAttemptContent.body

            OneSignalExtension.didReceiveNotificationExtensionRequest(self.receivedRequest, with: bestAttemptContent, withContentHandler: self.contentHandler)
        }
    }

    override func serviceExtensionTimeWillExpire() {
        // Use this as an opportunity to deliver your "best attempt" at modified content, otherwise the original push payload will be used.
        if let contentHandler = contentHandler, let bestAttemptContent =  bestAttemptContent {
            OneSignalExtension.serviceExtensionTimeWillExpireRequest(self.receivedRequest, with: self.bestAttemptContent)
            contentHandler(bestAttemptContent)
        }
    }
}
Vous devriez voir une erreur car le package OneSignal n’est pas installé. Cela sera résolu à l’étape suivante.

Ce fichier affiche une erreur jusqu'à ce que vous installiez le package à l'étape suivante.

7. Ajouter OneSignal à la cible NSE

Mettez à jour votre ios/Podfile pour inclure :
target 'OneSignalNotificationServiceExtension' do
  pod 'OneSignalXCFramework', '>= 5.0.0', '< 6.0'
end
Ouvrez votre projet dans le terminal et exécutez :
shell
cd ios pod install cd ..

Erreurs courantes de pod install

Vous pourriez rencontrer les erreurs suivantes, voici comment vous pouvez les résoudre.
CocoaPods s’appuie sur le gem Ruby xcodeproj pour lire vos fichiers de projet Xcode. À ce jour, la dernière version de xcodeproj ne reconnaît pas la version d’objet 70, qui a été introduite par Xcode 16. Ainsi, lorsque CocoaPods essaie d’ouvrir votre fichier .xcodeproj, il plante avec cette erreur.
  1. Fermez Xcode.
  2. Naviguez vers le fichier ios/<your-app>.xcodeproj/project.pbxproj de votre projet.
  3. Changez cette ligne : objectVersion = 70;
  4. Remplacez-la par : objectVersion = 55;
  5. Enregistrez, fermez et réexécutez cd ios pod install cd ..

Compiler pour iOS

Vous devriez maintenant pouvoir compiler et exécuter votre application sur un appareil iOS réel ou un simulateur iOS (16.2+).

Erreurs courantes de compilation iOS

Vous pourriez voir cette erreur lors de la compilation avec Xcode 15+, en raison d’un changement de configuration par défaut affectant les systèmes multiplateformes.
  1. Ouvrez votre dossier .xcworkspace dans Xcode et naviguez vers votre cible d’application > Build Phases.
  2. Vous devriez avoir une phase appelée “Embed Foundation Extensions” ou “Embed App Extensions”.
  3. Faites glisser et déplacez cette phase de compilation au-dessus de “Run Script”.
  4. Compilez et exécutez votre application. L’erreur devrait être résolue.

Ordre correct des Build Phases dans Xcode.

Décochez Copy only when installing.

RuntimeError - PBXGroup a tenté d’initialiser un objet avec un ISA inconnu PBXFileSystemSynchronizedRootGroup à partir des attributs : {"isa"=>"...", "exceptions"=>["//", "..."], "explicitFileTypes"=>{}, "explicitFolders"=>[], "path"=>"OneSignalNotificationServiceExtension", "sourceTree"=>"<group>"}
Correction :
  1. Trouvez le dossier listé sous “path” dans l’erreur
  2. Dans la barre latérale du projet Xcode, faites un clic droit sur le dossier
  3. Sélectionnez Convert to Group

Erreur de chemin pour PBXGroup.


Convertir le dossier en groupe.

Après avoir confirmé que votre compilation iOS fonctionne, continuez avec Tester l’intégration du SDK OneSignal.

Tester l’intégration du SDK OneSignal

Ce guide vous aide à vérifier que votre intégration du SDK OneSignal fonctionne correctement en testant les notifications push, l’enregistrement des abonnements et la messagerie in-app.
Si vous testez avec un émulateur Android, il doit démarrer avec un démarrage à froid.
  1. Allez dans Device Manager dans Android Studio.
  2. Sélectionnez votre appareil émulateur et cliquez sur Edit.
  3. Allez dans Additional Settings ou More.
  4. Définissez l’option de démarrage sur Cold Boot.
  5. Enregistrez les modifications et redémarrez l’émulateur.

Vérifier les abonnements mobiles

1

Lancez votre application sur un appareil de test.

L’invite d’autorisation push native devrait apparaître automatiquement si vous avez ajouté la méthode requestPermission lors de l’initialisation.

Invites d'autorisation push iOS et Android

2

Vérifiez votre tableau de bord OneSignal

Avant d’accepter l’invite, vérifiez le tableau de bord OneSignal :
  • Allez dans Audience > Subscriptions.
  • Vous devriez voir une nouvelle entrée avec le statut “Never Subscribed”.

Tableau de bord affichant un abonnement avec le statut 'Never Subscribed'

3

Retournez à l'application et appuyez sur Autoriser dans l'invite.

4

Actualisez la page Subscription du tableau de bord OneSignal.

Le statut de l’abonnement devrait maintenant afficher Subscribed.

Tableau de bord affichant un abonnement avec le statut 'Subscribed'

Vous avez créé avec succès un abonnement mobile. Les abonnements mobiles sont créés lorsque les utilisateurs ouvrent votre application pour la première fois sur un appareil ou s’ils désinstallent et réinstallent votre application sur le même appareil.

Configurer les abonnements de test

Les abonnements de test sont utiles pour tester une notification push avant d’envoyer un message.
1

Ajouter aux abonnements de test.

Dans le tableau de bord, à côté de l’abonnement, cliquez sur le bouton Options (trois points) et sélectionnez Add to Test Subscriptions.

Ajout d'un appareil aux abonnements de test

2

Nommez votre abonnement.

Nommez l’abonnement afin de pouvoir identifier facilement votre appareil plus tard dans l’onglet Test Subscriptions.

Tableau de bord affichant le champ 'Name your subscription'

3

Créer un segment d'utilisateurs de test.

Allez dans Audience > Segments > New Segment.
4

Nommez le segment.

Nommez le segment Test Users (le nom est important car il sera utilisé plus tard).
5

Ajoutez le filtre Test Users et cliquez sur Create Segment.

Création d'un segment 'Test Users' avec le filtre Test Users

Vous avez créé avec succès un segment d’utilisateurs de test. Nous pouvons maintenant tester l’envoi de messages à cet appareil individuel et à des groupes d’utilisateurs de test.

Envoyer un push de test via l’API

1

Obtenez votre clé API d'application et votre ID d'application.

Dans votre tableau de bord OneSignal, allez dans Settings > Keys & IDs.
2

Mettez à jour le code fourni.

Remplacez YOUR_APP_API_KEY et YOUR_APP_ID dans le code ci-dessous par vos clés réelles. Ce code utilise le segment Test Users que nous avons créé plus tôt.
curl -X \
POST --url 'https://api.onesignal.com/notifications' \
 --header 'content-type: application/json; charset=utf-8' \
 --header 'authorization: Key YOUR_APP_API_KEY' \
 --data \
 '{
  "app_id": "YOUR_APP_ID",
  "target_channel": "push",
  "name": "Testing basic setup",
  "headings": {
  	"en": "👋"
  },
  "contents": {
    "en": "Hello world!"
  },
  "included_segments": [
    "Test Users"
  ],
  "ios_attachments": {
    "onesignal_logo": "https://avatars.githubusercontent.com/u/11823027?s=200&v=4"
  },
  "big_picture": "https://avatars.githubusercontent.com/u/11823027?s=200&v=4"
}'
3

Exécutez le code.

Exécutez le code dans votre terminal.
4

Vérifiez les images et la livraison confirmée.

Si toutes les étapes de configuration ont été complétées avec succès, les abonnements de test devraient recevoir une notification avec une image incluse :

Notification push avec image sur iOS et Android

Les images apparaîtront petites dans la vue de notification réduite. Développez la notification pour voir l’image complète.
5

Vérifiez la livraison confirmée.

Dans votre tableau de bord, allez dans Delivery > Sent Messages, puis cliquez sur le message pour afficher les statistiques.Vous devriez voir la statistique confirmed, ce qui signifie que l’appareil a reçu la push.

Statistiques de livraison affichant la livraison confirmée

Si vous avez un forfait Professional ou supérieur, faites défiler jusqu’à Audience Activity pour voir la confirmation au niveau de l’abonnement :

Livraison confirmée au niveau de l'appareil dans Audience Activity

Vous avez envoyé avec succès une notification via notre API à un segment.
  • Aucune image reçue ? Votre Notification Service Extension est peut-être manquant.
  • Aucune livraison confirmée ? Consultez le guide de dépannage ici.
  • Vous rencontrez des problèmes ? Copiez-collez la requête API et un journal du début à la fin du lancement de l’application dans un fichier .txt. Ensuite, partagez les deux avec support@onesignal.com.

Envoyer un message in-app

Les messages in-app vous permettent de communiquer avec les utilisateurs pendant qu’ils utilisent votre application.
1

Fermez ou mettez votre application en arrière-plan sur l'appareil.

C’est parce que les utilisateurs doivent répondre aux critères d’audience in-app avant qu’une nouvelle session ne commence. Dans OneSignal, une nouvelle session commence lorsque l’utilisateur ouvre votre application après qu’elle ait été en arrière-plan ou fermée pendant au moins 30 secondes. Pour plus de détails, consultez notre guide sur comment les messages in-app sont affichés.
2

Créer un message in-app.

  • Dans votre tableau de bord OneSignal, naviguez vers Messages > In-App > New In-App.
  • Trouvez et sélectionnez le message Welcome.
  • Définissez votre Audience comme le segment Test Users que nous avons utilisé précédemment.

Ciblage du segment 'Test Users' avec un message in-app

3

Personnalisez le contenu du message si désiré.

Exemple de personnalisation du message de bienvenue in-app

4

Définir le déclencheur sur 'On app open'.

5

Planifier la fréquence.

Sous Schedule > How often do you want to show this message? sélectionnez Every time trigger conditions are satisfied.

Options de planification du message in-app

6

Rendre le message actif.

Cliquez sur Make Message Live pour qu’il soit disponible pour vos utilisateurs de test chaque fois qu’ils ouvrent l’application.
7

Ouvrez l'application et voyez le message.

Après que le message in-app soit actif, ouvrez votre application. Vous devriez le voir s’afficher :

Message de bienvenue in-app affiché sur les appareils

Vous ne voyez pas le message ?
  • Démarrez une nouvelle session
    • Vous devez fermer ou mettre l’application en arrière-plan pendant au moins 30 secondes avant de la rouvrir. Cela garantit qu’une nouvelle session est démarrée.
    • Pour plus d’informations, voir comment les messages in-app sont affichés.
  • Toujours dans le segment Test Users ?
    • Si vous avez réinstallé ou changé d’appareil, réajoutez l’appareil aux abonnements de test et confirmez qu’il fait partie du segment Test Users.
  • Vous rencontrez des problèmes ?
    • Suivez Obtenir un journal de débogage tout en reproduisant les étapes ci-dessus. Cela générera des journaux supplémentaires que vous pourrez partager avec support@onesignal.com et nous vous aiderons à enquêter sur ce qui se passe.
Vous avez configuré avec succès le SDK OneSignal et appris des concepts importants tels que :Continuez avec ce guide pour identifier les utilisateurs dans votre application et configurer des fonctionnalités supplémentaires.

Identification des utilisateurs

Précédemment, nous avons démontré comment créer des Abonnements mobiles. Nous allons maintenant étendre l’identification des Utilisateurs sur tous leurs abonnements (y compris push, email et SMS) en utilisant le SDK OneSignal. Nous couvrirons les External IDs, les tags, les abonnements multicanaux, la confidentialité et le suivi des événements pour vous aider à unifier et engager les utilisateurs sur toutes les plateformes.

Attribuer un External ID

Utilisez un External ID pour identifier les utilisateurs de manière cohérente sur tous les appareils, adresses e-mail et numéros de téléphone en utilisant l’identifiant utilisateur de votre backend. Cela garantit que votre messagerie reste unifiée sur tous les canaux et systèmes tiers (particulièrement important pour les Intégrations). Définissez l’External ID avec la méthode login de notre SDK chaque fois qu’ils sont identifiés par votre application.
OneSignal génère des ID uniques en lecture seule pour les abonnements (Subscription ID) et les utilisateurs (OneSignal ID).Lorsque les utilisateurs téléchargent votre application sur différents appareils, s’abonnent à votre site Web et/ou vous fournissent des adresses e-mail et des numéros de téléphone en dehors de votre application, de nouveaux abonnements seront créés.La définition de l’External ID via notre SDK est fortement recommandée pour identifier les utilisateurs sur tous leurs abonnements, quelle que soit la façon dont ils sont créés.

Ajouter des tags de données

Les Tags sont des paires clé-valeur de données chaîne que vous pouvez utiliser pour stocker les propriétés des utilisateurs (comme username, role ou les préférences) et les événements (comme purchase_date, game_level ou les interactions utilisateur). Les tags alimentent la Personnalisation des messages et la Segmentation avancées permettant des cas d’utilisation plus avancés. Définissez les tags avec les méthodes addTag et addTags de notre SDK au fur et à mesure que les événements se produisent dans votre application. Dans cet exemple, l’utilisateur a atteint le niveau 6 identifiable par le tag appelé current_level défini sur une valeur de 6.

Un profil utilisateur dans OneSignal avec un tag appelé "current_level" défini sur "6"

Nous pouvons créer un segment d’utilisateurs ayant un niveau entre 5 et 10, et l’utiliser pour envoyer des messages ciblés et personnalisés :

Éditeur de segment montrant un segment ciblant les utilisateurs avec une valeur current_level supérieure à 4 et inférieure à 10


Capture d'écran montrant une notification push ciblant le segment Niveau 5-10 avec un message personnalisé


La notification push est reçue sur un appareil iOS et Android avec le contenu personnalisé

Ajouter des abonnements email et/ou SMS

Plus tôt, nous avons vu comment notre SDK crée des abonnements mobiles pour envoyer des messages push et in-app. Vous pouvez également atteindre les utilisateurs via les canaux email et SMS en créant les abonnements correspondants. Si l’adresse e-mail et/ou le numéro de téléphone existent déjà dans l’application OneSignal, le SDK l’ajoutera à l’utilisateur existant, il ne créera pas de doublons. Vous pouvez afficher les utilisateurs unifiés via Audience > Users dans le tableau de bord ou avec l’API View user.

Un profil utilisateur avec des abonnements push, email et SMS unifiés par External ID

Meilleures pratiques pour la communication multicanale
  • Obtenez un consentement explicite avant d’ajouter des abonnements email ou SMS.
  • Expliquez les avantages de chaque canal de communication aux utilisateurs.
  • Fournissez des préférences de canal afin que les utilisateurs puissent sélectionner les canaux qu’ils préfèrent.

Confidentialité et consentement de l’utilisateur

Pour contrôler quand OneSignal collecte les données utilisateur, utilisez les méthodes de contrôle du consentement du SDK : Consultez nos documents sur la confidentialité et la sécurité pour en savoir plus sur :

Demander les autorisations push

Au lieu d’appeler requestPermission() immédiatement à l’ouverture de l’application, adoptez une approche plus stratégique. Utilisez un message in-app pour expliquer la valeur des notifications push avant de demander l’autorisation. Pour les meilleures pratiques et les détails d’implémentation, consultez notre guide Demander les autorisations push.

Écouter les événements push, utilisateur et in-app

Utilisez les écouteurs du SDK pour réagir aux actions des utilisateurs et aux changements d’état. Le SDK fournit plusieurs écouteurs d’événements auxquels vous pouvez vous connecter. Consultez notre guide de référence du SDK pour plus de détails.

Événements de notification push

Pour une personnalisation complète, consultez Mobile Service Extensions.

Changements d’état de l’utilisateur

Événements de message in-app

  • addClickListener() : Gérer les actions de clic in-app. Idéal pour le deep linking ou le suivi des événements.
  • addLifecycleListener() : Suivre le cycle de vie complet des messages in-app (affiché, cliqué, rejeté, etc.).

Configuration avancée et capacités

Explorez davantage de capacités pour améliorer votre intégration :

Configuration et référence du SDK mobile

Assurez-vous d’avoir activé toutes les fonctionnalités clés en consultant le guide Configuration push mobile. Pour tous les détails sur les méthodes disponibles et les options de configuration, visitez la référence du SDK mobile.
Félicitations ! Vous avez terminé avec succès le guide de configuration du SDK mobile.

Besoin d’aide ?Discutez avec notre équipe d’assistance ou envoyez un e-mail à support@onesignal.comVeuillez inclure :
  • Les détails du problème que vous rencontrez et les étapes de reproduction si disponibles
  • Votre OneSignal App ID
  • L’External ID ou le Subscription ID le cas échéant
  • L’URL du message que vous avez testé dans le OneSignal Dashboard le cas échéant
  • Tous les journaux ou messages d’erreur pertinents
Nous serons ravis de vous aider !