Passer au contenu

Suivi de la livraison des messages iOS

Il existe une méthode d’API dans Pushwoosh qui suit la livraison des notifications push. Les applications iOS ne prennent pas en charge cette méthode nativement, car les notifications push sur iOS sont gérées par le système d’exploitation (OS), et non par le SDK Pushwoosh. Cependant, vous pouvez implémenter le suivi de livraison en ajoutant la Pushwoosh Notification Service Extension pour le suivi de la livraison des pushs à votre projet. Vous trouverez ici les étapes pour implémenter le suivi de la livraison des messages pour les applications iOS.

Ajouter la Notification Service Extension

Anchor link to
  1. Dans Xcode, sélectionnez File > New > Target…

  2. Sélectionnez Notification Service Extension et cliquez sur Next.

  1. Saisissez le nom du produit et cliquez sur Finish.
  1. Cliquez sur Cancel à l’invite Activate scheme.

En annulant, vous maintenez Xcode en mode de débogage pour votre application, au lieu de l’extension que vous venez de créer. Si vous l’avez activé par accident, vous pouvez revenir au débogage de votre application dans Xcode.

Dépendances pour la Notification Service Extension (CocoaPods uniquement)

Anchor link to

Note : Si vous utilisez Swift Package Manager pour gérer les dépendances, vous pouvez sauter cette étape, car les dépendances sont ajoutées automatiquement.

Ouvrez votre Podfile et ajoutez la dépendance pour la cible :

Podfile
target 'NotificationServiceExtension' do
use_frameworks!
pod 'PushwooshXCFramework'
end

Exécutez les commandes suivantes dans le terminal pour installer les dépendances :

Terminal window
rm -rf Podfile.lock
pod deintegrate
pod setup
pod repo update
pod install

Ajouter du code pour le suivi des événements de livraison de message

Anchor link to
  1. Ajoutez le code suivant à votre fichier NotificationService.m :
import UserNotifications
import PushwooshFramework
class NotificationService: UNNotificationServiceExtension {
var contentHandler: ((UNNotificationContent) -> Void)?
var bestAttemptContent: UNMutableNotificationContent?
override func didReceive(_ request: UNNotificationRequest, withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void) {
PWNotificationExtensionManager.shared().handle(request, contentHandler: contentHandler)
}
}
  1. Ajoutez Pushwoosh_APPID à votre info.plist de la Notification Service Extension.
<key>Pushwoosh_APPID</key>
<string>XXXXX-XXXXX</string>

Partagez vos commentaires avec nous

Anchor link to

Vos commentaires nous aident à créer une meilleure expérience, nous serions donc ravis de connaître votre avis si vous rencontrez des problèmes lors du processus d’intégration du SDK. Si vous rencontrez des difficultés, n’hésitez pas à nous faire part de vos réflexions via ce formulaire.