Passer au contenu

Contenu push

Découvrez comment configurer les contenus push pour le SDK de Braze.

Conditions préalables

Avant de pouvoir utiliser cette fonctionnalité, vous devrez intégrer le SDK Braze Swift. Vous devrez également configurer les notifications push, ce qui implique la mise en œuvre du framework UNNotification.

La version minimale suivante du SDK est requise pour recevoir les contenus push :

Configuration du contenu push

Étape 1 : Ajouter la cible Notification Content Extension

Dans votre projet d’application, accédez au menu File > New > Target et ajoutez une nouvelle cible Notification Content Extension, puis activez-la.

Sélecteur de cible Xcode créant une Notification Content Extension pour le contenu push.

Xcode devrait générer automatiquement une nouvelle cible et créer les fichiers suivants :

  • NotificationViewController.swift
  • MainInterface.storyboard

Étape 2 : Activer les capacités

Dans Xcode, ajoutez la capacité Background Modes via le panneau Signing & Capabilities à la cible principale de l’application. Cochez les cases Background fetch et Remote notifications.

Panneau des capacités Xcode montrant les modes d'arrière-plan activés.

Ajouter un groupe d’applications

De plus, depuis le panneau Signing & Capabilities dans Xcode, ajoutez la capacité App Groups à la cible principale de votre application ainsi qu’aux cibles Notification Content Extension. Cliquez ensuite sur le bouton +. Utilisez l’identifiant de bundle de votre application pour créer le groupe d’applications. Par exemple, si l’identifiant de bundle de votre application est com.company.appname, vous pouvez nommer votre groupe d’applications group.com.company.appname.xyz.

Si vous n’ajoutez pas votre application à un groupe d’applications, votre application risque de ne pas remplir certains champs du payload push et ne fonctionnera pas pleinement comme prévu.

Étape 3 : Ajouter le framework Push Story à votre application

Après avoir suivi le guide d’intégration du gestionnaire de paquets Swift, ajoutez BrazePushStory à votre Notification Content Extension :

Dans Xcode, sous frameworks et bibliothèques, sélectionnez l'icône « + » pour ajouter un framework.

Sélection de produit de paquet Xcode ajoutant BrazePushStory à la cible de l'extension de contenu de notification.

Ajoutez la ligne suivante à votre Podfile :

target 'YourAppTarget' do
pod 'BrazeKit'
pod 'BrazeUI'
pod 'BrazeLocation'
end

target 'YourNotificationContentExtensionTarget' do
pod 'BrazePushStory'
end

# Only include the below if you want to also integrate Rich Push
target 'YourNotificationServiceExtensionTarget' do
pod 'BrazeNotificationService'
end

Après avoir mis à jour le Podfile, accédez au répertoire de votre projet d’application Xcode dans votre terminal et exécutez pod install.

Téléchargez le dernier fichier BrazePushStory.zip depuis la page des versions GitHub, extrayez-le et ajoutez le BrazePushStory.xcframework à la Notification Content Extension de votre projet.

Paramètres du framework Xcode montrant BrazePushStory.xcframework ajouté avec l'option Do Not Embed sélectionnée.

Étape 4 : Mettre à jour votre contrôleur de vue de notification

Dans NotificationViewController.swift, ajoutez la ligne suivante pour importer les fichiers d’en-tête :

import BrazePushStory

Ensuite, remplacez l’implémentation par défaut en héritant de BrazePushStory.NotificationViewController :

class NotificationViewController: BrazePushStory.NotificationViewController {}

Gestion personnalisée des événements de contenu push

Si vous souhaitez implémenter votre propre logique personnalisée pour gérer les événements de notification de contenu push, héritez de BrazePushStory.NotificationViewController comme indiqué dans l’exemple précédent et surchargez les méthodes didReceive dans l’exemple suivant.

import BrazePushStory
import UserNotifications
import UserNotificationsUI

class NotificationViewController: BrazePushStory.NotificationViewController {
  override func didReceive(_ notification: UNNotification) {
    super.didReceive(notification)

    // Custom handling logic
  }

  override func didReceive(_ response: UNNotificationResponse, completionHandler completion: @escaping (UNNotificationContentExtensionResponseOption) -> Void) {
    super.didReceive(response, completionHandler: completion)

    // Custom handling logic
  }
}

Étape 5 : Configurer le plist de la Notification Content Extension

Ouvrez le fichier Info.plist de la Notification Content Extension, puis ajoutez et modifiez les clés suivantes sous NSExtension \ NSExtensionAttributes :

Clé Type Valeur
UNNotificationExtensionCategory String ab_cat_push_story_v2
UNNotificationExtensionDefaultContentHidden Boolean YES
UNNotificationExtensionInitialContentSizeRatio Number 0.6
UNNotificationExtensionUserInteractionEnabled Boolean YES

De plus, ajoutez le dictionnaire Braze de niveau supérieur suivant au même fichier Info.plist, en remplaçant REPLACE_WITH_APPGROUP par le groupe d’applications que vous avez créé à l’étape 2 :

Clé Type Valeur
Braze.AppGroup String REPLACE_WITH_APPGROUP

Votre fichier Info.plist devrait correspondre à l’image suivante :

Info.plist de la Notification Content Extension avec les clés de contenu push Braze et les paramètres du groupe d'applications.

Étape 6 : Mettre à jour l’intégration Braze dans votre application principale

Avant d’initialiser Braze, attribuez le nom de votre groupe d’applications à la propriété push.appGroup de votre configuration Braze.

let configuration = Braze.Configuration(apiKey: "<YOUR-BRAZE-API-KEY>",
                                        endpoint: "<YOUR-BRAZE-ENDPOINT>")
configuration.push.appGroup = "REPLACE_WITH_APPGROUP"
let braze = Braze(configuration: configuration)

Conditions préalables

Avant de pouvoir utiliser cette fonctionnalité, vous devez intégrer le SDK Braze Cordova. Vous devrez également configurer les notifications push.

Configuration du contenu push

Étape 1 : Créer une extension de contenu de notification

Dans votre projet Xcode, créez une extension de contenu de notification. Pour un guide complet, consultez le tutoriel iOS Push Stories.

Étape 2 : Configurer votre groupe d’applications push

Dans le fichier config.xml de votre projet, configurez le groupe d’applications push que vous venez de créer.

<preference name="com.braze.ios_push_app_group" value="NOTIFICATION_CONTENT_EXTENTION" />

Remplacez PUSH_APP_GROUP par le nom de votre groupe d’applications push. Votre fichier config.xml devrait ressembler à ceci :

<preference name="com.braze.ios_push_app_group" value="MyPushAppGroup" />

Étape 3 : Ajouter une nouvelle cible

Ouvrez votre Podfile et ajoutez BrazePushStory à la cible de l’extension de contenu de notification que vous avez créée précédemment. Pour éviter les erreurs de symboles dupliqués, utilisez la liaison statique.

target 'NOTIFICATION_CONTENT_EXTENSION' do
  use_frameworks! :linkage => :static
  pod 'BrazePushStory'
end

Remplacez NOTIFICATION_CONTENT_EXTENSION par le nom de votre extension de contenu de notification. Votre Podfile devrait ressembler à ceci :

target 'MyAppNotificationContentExtension' do
  use_frameworks! :linkage => :static
  pod 'BrazePushStory'
end

Étape 4 : Réinstaller vos dépendances CocoaPods

Dans le terminal, accédez à votre répertoire iOS et réinstallez vos dépendances CocoaPods.

cd PATH_TO_PROJECT/platform/ios
pod install

Conditions préalables

Avant de pouvoir utiliser cette fonctionnalité, vous devrez intégrer le SDK React Native de Braze. Vous devrez également configurer les notifications push.

Activation du contenu push

Pour le SDK React Native, le contenu push est disponible par défaut sur Android.

Pour activer le contenu push sur iOS avec Expo, assurez-vous qu’un groupe d’applications est défini pour votre application. Pour plus d’informations, consultez Ajouter un groupe d’applications.

Ensuite, définissez la propriété enableBrazeIosPushStories sur true et attribuez l’ID de votre groupe d’applications à iosPushStoryAppGroup dans votre objet expo.plugins du fichier app.json :

{
  "expo": {
    "plugins": [
      [
        "@braze/expo-plugin",
        {
          ...
          "enableBrazeIosPushStories": true,
          "iosPushStoryAppGroup": "group.com.company.myApp.PushStories"
        }
      ]
    ]
  }
}

Enfin, ajoutez l’identifiant de bundle de cette extension d’application à la configuration des informations d’identification de votre projet : <your-app-bundle-id>.BrazeExpoPushStories. Pour plus de détails sur ce processus, consultez Utiliser des extensions d’application avec Expo Application Services.

New Stuff!