Personnalisation des notifications push
Découvrez comment personnaliser les notifications push pour le SDK de Braze.
Conditions préalables
Avant de pouvoir utiliser cette fonctionnalité, vous devrez intégrer le SDK Android Braze. Vous devrez également configurer les notifications push.
Utilisation d’un rappel pour les événements de type “push” (pousser)
Braze propose une fonction de rappel subscribeToPushNotificationEvents()
pour la réception, l’ouverture ou le rejet des notifications push. Nous vous recommandons de placer cette fonction de rappel dans votre Application.onCreate()
pour ne manquer aucun événement survenant lorsque votre application n’est pas en fonctionnement.
Si vous utilisiez un Récepteur de diffusion personnalisé pour cette fonctionnalité dans votre application, vous pouvez le supprimer en toute sécurité pour adopter cette option d’intégration.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Braze.getInstance(context).subscribeToPushNotificationEvents(event -> {
final BrazeNotificationPayload parsedData = event.getNotificationPayload();
//
// The type of notification itself
//
final boolean isPushOpenEvent = event.getEventType() == BrazePushEventType.NOTIFICATION_OPENED;
final boolean isPushReceivedEvent = event.getEventType() == BrazePushEventType.NOTIFICATION_RECEIVED;
// Sent when a user has dismissed a notification
final boolean isPushDeletedEvent = event.getEventType() == BrazePushEventType.NOTIFICATION_DELETED;
//
// Notification data
//
final String pushTitle = parsedData.getTitleText();
final Long pushArrivalTimeMs = parsedData.getNotificationReceivedTimestampMillis();
final String deeplink = parsedData.getDeeplink();
//
// Custom KVP data
//
final String myCustomKvp1 = parsedData.getBrazeExtras().getString("my first kvp");
final String myCustomKvp2 = parsedData.getBrazeExtras().getString("my second kvp");
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Braze.getInstance(context).subscribeToPushNotificationEvents { event ->
val parsedData = event.notificationPayload
//
// The type of notification itself
//
val isPushOpenEvent = event.eventType == BrazePushEventType.NOTIFICATION_OPENED
val isPushReceivedEvent = event.eventType == BrazePushEventType.NOTIFICATION_RECEIVED
// Sent when a user has dismissed a notification
val isPushDeletedEvent = event.eventType == BrazePushEventType.NOTIFICATION_DELETED
//
// Notification data
//
val pushTitle = parsedData.titleText
val pushArrivalTimeMs = parsedData.notificationReceivedTimestampMillis
val deeplink = parsedData.deeplink
//
// Custom KVP data
//
val myCustomKvp1 = parsedData.brazeExtras.getString("my first kvp")
val myCustomKvp2 = parsedData.brazeExtras.getString("my second kvp")
}
Avec les boutons d’action de notification, les intentions BRAZE_PUSH_INTENT_NOTIFICATION_OPENED
se déclenchent lorsque les boutons avec les actions opens app
ou deep link
sont cliqués. La gestion des liens profonds et des compléments reste la même. Les boutons avec des actions close
ne déclenchent pas les intentions BRAZE_PUSH_INTENT_NOTIFICATION_OPENED
et rejettent automatiquement la notification.
Créez votre listener de notification push dans Application.onCreate
pour vous assurer que votre listener est déclenché après qu’un utilisateur final ait tapé une notification alors que votre application est dans un état terminé.
Personnalisation des polices de caractères
Étape 1 : Créer une famille de polices
Voici un exemple de définition d’une famille de polices personnalisée à l’aide du guide des familles de polices. Pour cet exemple, nous utilisons la police Bungee Shade.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<!--Note: You must declare both sets of attributes
so that your fonts load on devices running Android 8.0 (API level 26) or lower.
See https://developer.android.com/guide/topics/ui/look-and-feel/fonts-in-xml.html -->
<font android:fontStyle="normal"
android:fontWeight="400"
android:font="@font/bungeeshade"
app:fontStyle="normal"
app:fontWeight="400"
app:font="@font/bungeeshade"/>
</font-family>
Après avoir stocké la définition de la famille de polices dans /res/font/bungee_font_family.xml
, nous pouvons nous y référer dans le XML en tant que @font/bungee_font_family
.
Étape 2 : Référencez votre famille de polices
Maintenant que la famille de polices est créée, vous pouvez substituer le style Braze par défaut dans votre styles.xml
pour inclure des références à la famille de polices.
Par exemple, la substitution de styles suivante utiliserait la famille de polices bungee
pour tous les messages in-app Braze.
1
2
3
4
5
6
7
8
9
<style name="Braze.InAppMessage">
<item name="android:fontFamily">@font/bungee_font_family</item>
<item name="fontFamily">@font/bungee_font_family</item>
</style>
<style name="Braze.Cards">
<item name="android:fontFamily">@font/another_custom_font_family</item>
<item name="fontFamily">@font/another_custom_font_family</item>
</style>
Les deux attributs de style android:fontFamily
et fontFamily
doivent être définis pour maintenir la compatibilité entre toutes les versions de SDK.
Personnalisation de l’affichage des notifications
Étape 1 : Créer votre fabrique de notification personnalisée
Dans certains scénarios, vous pourriez désirer personnaliser les notifications push d’une manière qui pourrait être encombrante ou non disponible côté serveur. Pour vous donner un contrôle complet de l’affichage des notifications, nous avons ajouté la possibilité de définir vos propres objets de notification. IBrazeNotificationFactory
pour créer des objets de notification qui seront affichés par Braze.
Si une IBrazeNotificationFactory
personnalisée est définie, Braze appellera la méthode createNotification()
de votre fabrique lors de la réception de la notification push avant qu’elle ne soit affichée à l’utilisateur. Braze transmettra un Bundle
contenant les données de notification push Braze et un autre Bundle
contenant les paires clé-valeur personnalisées envoyées soit via le tableau de bord soit par les API de messagerie :
Braze transmettra un fichier BrazeNotificationPayload
contenant les données de la notification push de Braze.
1
2
3
4
5
6
7
8
9
// Factory method implemented in your custom IBrazeNotificationFactory
@Override
public Notification createNotification(BrazeNotificationPayload brazeNotificationPayload) {
// Example of getting notification title
String title = brazeNotificationPayload.getTitleText();
// Example of retrieving a custom KVP ("my_key" -> "my_value")
String customKvp = brazeNotificationPayload.getBrazeExtras().getString("my_key");
}
1
2
3
4
5
6
7
8
// Factory method implemented in your custom IBrazeNotificationFactory
override fun createNotification(brazeNotificationPayload: BrazeNotificationPayload): Notification {
// Example of getting notification title
val title = brazeNotificationPayload.getTitleText()
// Example of retrieving a custom KVP ("my_key" -> "my_value")
val customKvp = brazeNotificationPayload.getBrazeExtras().getString("my_key")
}
Vous pouvez renvoyer null
à partir de votre méthode createNotification()
personnalisée pour ne pas afficher du tout la notification, utiliser BrazeNotificationFactory.getInstance().createNotification()
pour obtenir notre objet notification
par défaut pour ces données et le modifier avant l’affichage, ou générer un objet notification
complètement séparé pour l’affichage.
Pour obtenir de la documentation sur les clés de données Braze push, reportez-vous au SDK Android.
Étape 2 : Définir votre fabrique de notification personnalisée
Pour demander à Braze d’utiliser votre fabrique de notification personnalisée, utilisez la méthode setCustomBrazeNotificationFactory
afin de définir votre IBrazeNotificationFactory
:
1
setCustomBrazeNotificationFactory(IBrazeNotificationFactory brazeNotificationFactory);
1
setCustomBrazeNotificationFactory(brazeNotificationFactory: IBrazeNotificationFactory)
L’endroit recommandé pour définir votre IBrazeNotificationFactory
personnalisée est dans la méthode de cycle de vie de l’application Application.onCreate()
(pas activité). Cela permettra à la fabrique de notification d’être correctement définie chaque fois que le processus de votre application est actif.
La création de votre propre notification à partir de zéro est un cas d’utilisation avancé et ne doit être effectuée qu’après des tests approfondis et une compréhension approfondie de la fonctionnalité push de Braze. Par exemple, vous devez vous assurer que vos journaux de notifications push s’ouvrent correctement.
Pour annuler la définition de votre IBrazeNotificationFactory
personnalisée et revenir à la gestion par défaut de Braze pour les notifications push, transmettez null
à notre système de définition de fabrique de notification personnalisée :
1
setCustomBrazeNotificationFactory(null);
1
setCustomBrazeNotificationFactory(null)
Texte du multiplicateur de rendu
Dans la version 3.1.1 du SDK Braze, il est possible d’envoyer du HTML à un appareil pour rendre le texte multicolore dans les notifications push.
Cet exemple est affiché avec le code HTML suivant :
1
2
3
<p><span style="color: #99cc00;">M</span>u<span style="color: #008080;">lti</span>Colo<span style="color: #ff6600;">r</span> <span style="color: #000080;">P</span><span style="color: #00ccff;">u</span><span style="color: #ff0000;">s</span><span style="color: #808080;">h</span></p>
<p><em>test</em> <span style="text-decoration: underline; background-color: #ff6600;"><strong>message</strong></span></p>
Gardez à l’esprit qu’Android limite les éléments et les tags HTML valides dans vos notifications push. Par exemple, marquee
n’est pas autorisé.
Le rendu du texte multicolore est spécifique à l’appareil et peut ne pas s’afficher en fonction de l’appareil ou de la version d’Android.
Pour rendre le texte multicolore dans une notification push, vous pouvez mettre à jour votre braze.xml
ou BrazeConfig
:
Ajoutez ce qui suit dans votre braze.xml
:
1
<bool translatable="false" name="com_braze_push_notification_html_rendering_enabled">true</bool>
Ajoutez ce qui suit dans votre BrazeConfig
:
1
2
3
4
BrazeConfig brazeConfig = new BrazeConfig.Builder()
.setPushHtmlRenderingEnabled(true)
.build();
Braze.configure(this, brazeConfig);
1
2
3
4
val brazeConfig = BrazeConfig.Builder()
.setPushHtmlRenderingEnabled(true)
.build()
Braze.configure(this, brazeConfig)
Tags HTML pris en charge
À l’heure actuelle, Google ne répertorie pas les étiquettes HTML prises en charge pour Android directement dans sa documentation. Cette information ne peut être trouvée que dans le fichier Html.java
de son dépôt Git. Gardez cela à l’esprit lorsque vous vous référez au tableau suivant, car ces informations ont été extraites de ce fichier et les tags HTML pris en charge peuvent être modifiés.
Catégorie | Étiquette HTML | Description |
---|---|---|
Style de texte de base | <b> , <strong> |
Texte en gras |
<i> , <em> |
Texte en italique | |
<u> |
Souligner le texte | |
<s> , <strike> , <del> |
Texte barré | |
<sup> |
Texte en exposant | |
<sub> |
Texte en indice | |
<tt> |
Texte monospace | |
Taille/Police | <big> , <small> |
Modification de la taille relative du texte |
<font color="..."> |
Définit la couleur d'avant-plan | |
<span> (avec insertion CSS) |
Styles en ligne (e.g., couleur, arrière-plan) | |
Paragraphe et bloc | <p> , <div> |
Sections au niveau des blocs |
<br> |
Retour à la ligne | |
<blockquote> |
Bloc cité | |
<ul> + <li> |
Liste non ordonnée avec puces | |
Rubriques | <h1> - <h6> |
Titres (différentes tailles) |
Liens et images | <a href="..."> |
Lien cliquable |
<img src="..."> |
Image incorporée | |
Autres en ligne | <em> , <strong> , <dfn> , <cite> |
Synonymes de italique ou gras |
Rendu des images en ligne
Fonctionnement
Vous pouvez présenter une image plus grande dans votre notification push Android à l’aide de la fonction inline image push. Avec cette conception, les utilisateurs n’auront pas à étendre manuellement la notification push pour agrandir l’image. Contrairement aux notifications push standard pour Android, les images des notifications push d’image insérée ont un rapport hauteur/largeur de 3:2.
Compatibilité
Bien que vous puissiez envoyer des images en ligne à n’importe quel appareil, les appareils et les SDK qui ne respectent pas les versions minimales afficheront une image standard à la place. Pour que les images en ligne s’affichent correctement, le SDK Android Braze v10.0.0+ et un appareil fonctionnant sous Android M+ sont nécessaires.
Les appareils fonctionnant sous Android 12 s’afficheront différemment en raison des modifications dans les styles personnalisés de notification push.
Envoi d’un push d’image en ligne
Lors de la création d’un message push Android, cette fonctionnalité est disponible dans le menu déroulant Type de notification.
Paramètres
De nombreux paramètres avancés sont disponibles pour les notifications push Android envoyées via le tableau de bord de Braze. Le présent article décrit ces fonctionnalités et la manière de les utiliser avec succès.
ID de notification
Un ID de notification est un identifiant unique pour une catégorie de message de votre choix qui informe le service de messagerie de ne respecter que le message le plus récent de cet ID. Définir un ID de notification vous permet d’envoyer uniquement le message le plus récent et le plus pertinent, plutôt qu’une pile de données obsolètes et non pertinentes.
Priorité de livraison d’envoi de message Firebase
Le champ Priorité d’envoi/distribution de la messagerie Firebase vous permet de contrôler si un push est envoyé avec une priorité “normale” ou “élevée” à la messagerie Firebase Cloud.
TTL (Durée de vie)
Le champ Durée en vie (TTL) vous permet de définir une durée personnalisée de stockage des messages avec le service de messagerie push. Les valeurs par défaut pour la durée de vie sont de quatre semaines pour FCM et de 31 jours pour ADM.
Texte récapitulatif
Le texte récapitulatif vous permet de définir un texte supplémentaire dans la vue de notification étendue. Il sert également de légende pour les notifications avec des images.
Le texte récapitulatif s’affiche sous le corps du message dans la vue étendue.
Pour les notifications push qui incluent des images, le texte du message s’affiche dans la vue réduite tandis que le texte récapitulatif s’affiche comme légende d’image lorsque la notification est étendue.
URI personnalisés
La fonctionnalité URI personnalisé vous permet de spécifier une URL Web ou une ressource Android vers laquelle naviguer lorsque l’on clique sur la notification. Si aucun URI personnalisé n’est spécifié, cliquer sur la notification amène les utilisateurs dans votre application. Vous pouvez utiliser l’URI personnalisé pour créer un lien profond à l’intérieur de votre application et diriger les utilisateurs vers des ressources qui existent en dehors de votre application. Ceci peut être spécifié via l’API Messages ou notre tableau de bord sous Paramètres avancés dans le compositeur de push comme illustré :
Priorité d’affichage de la notification
Le paramètre de priorité d’affichage de notification n’est plus utilisé sur les appareils exécutant Android O ou plus récents. Pour les appareils plus récents, définissez la priorité par le biais de la configuration du canal de notification.
Le niveau de priorité d’une notification push affecte la manière dont votre notification est affichée dans la barre de notification par rapport à d’autres notifications. Il peut également affecter la vitesse et la manière de livrer, car les messages normaux et moins prioritaires peuvent être envoyés avec une latence légèrement plus élevée ou groupés pour préserver la durée de vie de la batterie, alors que les messages haute priorité sont toujours envoyés immédiatement.
Dans Android O, la priorité de notification est devenue une propriété des canaux de notification. Vous devrez travailler avec votre développeur pour définir la priorité d’un canal pendant sa configuration, puis utiliser le tableau de bord pour sélectionner le canal approprié lors de l’envoi de vos sons de notification. Pour les appareils exécutant des versions d’Android antérieures à O, la spécification d’un niveau de priorité pour les notifications Android est possible via le tableau de bord de Braze et l’API d’envoi de messages.
Pour envoyer un message à l’ensemble de votre base d’utilisateurs avec une priorité spécifique, nous vous recommandons de spécifier indirectement la priorité via la configuration du canal de communication (pour cibler les appareils O+) et d’ envoyer la priorité individuelle à partir du tableau de bord (pour cibler les appareils <O).
Les niveaux de priorité que vous pouvez définir sur les notifications push Android ou Fire OS sont les suivants :
Priorité | Description ou utilisation prévue | Valeur de priority (pour les messages API) |
---|---|---|
Max | Messages urgents ou à délai de réponse critique | 2 |
Élevée | Communication importante, telle que le nouveau message d’un ami | 1 |
Par défaut | La plupart des notifications : utilisez « par défaut » si votre message ne tombe pas explicitement dans les autres types de priorité | 0 |
Faible | Informations que vous voulez que les utilisateurs connaissent, mais ne nécessitant pas d’action immédiate | -1 |
Min | Informations contextuelles ou d’arrière-plan. | -2 |
Pour plus d’informations, consultez la documentation de Google sur les notifications Android.
Sons
Dans Android O, les sons de notification sont devenus une propriété des canaux de notification. Vous devrez travailler avec votre développeur pour définir le son d’un canal pendant sa configuration, puis utiliser le tableau de bord pour sélectionner le canal approprié lors de l’envoi de vos notifications.
Pour les appareils fonctionnant dans des versions d’Android antérieures à O, Braze vous permet de définir le son d’un message de notification push individuel via le composeur du tableau de bord. Vous pouvez le faire en spécifiant une ressource sonore locale sur l’appareil (par exemple, android.resource://com.mycompany.myapp/raw/mysound
). Spécifier « par défaut » dans ce champ jouera le son de notification par défaut sur l’appareil. Cela peut être spécifié via l’API Messages ou le tableau de bord sous Paramètres avancés dans le compositeur de push.
Saisissez l’URI complet de la ressource sonore (par exemple, android.resource://com.mycompany.myapp/raw/mysound
) dans l’invite du tableau de bord.
Pour envoyer un message à l’ensemble de votre base d’utilisateurs avec un son spécifique, nous vous recommandons de spécifier indirectement le son via la configuration du canal de communication (pour cibler les appareils O+) et d’ envoyer le son individuel à partir du tableau de bord (pour cibler les appareils <O).
Conditions préalables
Avant de pouvoir utiliser cette fonctionnalité, vous devrez intégrer le SDK Swift Braze. Vous devrez également configurer les notifications push.
Personnaliser les boutons d’action
Le SDK Braze Swift offre une prise en charge de la gestion des URL pour les boutons d’action push. Il existe quatre ensembles de boutons d’action par défaut pour les catégories de notification push par défaut de Braze : Accept/Decline
, Yes/No
, Confirm/Cancel
et More
.
Enregistrement manuel des boutons d’action
L’enregistrement manuel des boutons d’action push n’est pas recommandé.
Si vous configurez les notifications push à l’aide de l’option de configuration configuration.push.automation
, Braze enregistre automatiquement les boutons d’action pour les catégories de push par défaut et gère l’analyse/analytique des clics sur les boutons d’action push et le routage des URL.
Toutefois, vous pouvez choisir d’enregistrer manuellement les boutons d’action push à la place.
Étape 1 : Ajout des catégories de notification push par défaut de Braze
Utilisez le code suivant pour vous inscrire aux catégories push par défaut lorsque vous vous inscrivez à push :
a
1
UNUserNotificationCenter.current().setNotificationCategories(Braze.Notifications.categories)
1
[[UNUserNotificationCenter currentNotificationCenter] setNotificationCategories:BRZNotifications.categories];
Cliquer sur les boutons d’action push avec le mode d’activation en arrière-plan ne fera que rejeter la notification et n’ouvrira pas l’application. Lorsque l’utilisateur ouvrira à nouveau l’application, l’analyse de clics de bouton pour ces actions sera transmise au serveur.
Étape 2 : Activer la gestion interactive des notifications push
Pour activer la gestion de notre bouton d’action push, y compris l’analyse des clics et le routage des URL, ajoutez le code suivant à la méthode de délégation de votre application didReceive(_:completionHandler:)
:
1
AppDelegate.braze?.notifications.handleUserNotification(response: response, withCompletionHandler: completionHandler)
1
2
[AppDelegate.braze.notifications handleUserNotificationWithResponse:response
withCompletionHandler:completionHandler];
Si vous utilisez le framework UNNotification
et que vous avez implémenté les méthodes de notification de Braze, vous devriez déjà avoir intégré cette méthode.
Personnalisation des catégories de poussée
En plus de fournir un ensemble de catégories de push par défaut, Braze prend en charge les catégories et actions de notification personnalisées. Après avoir enregistré des catégories dans votre application, vous pouvez utiliser le tableau de bord Braze pour envoyer ces catégories de notification personnalisées à vos utilisateurs.
Voici un exemple qui tire parti du LIKE_CATEGORY
affiché sur l’appareil :
Étape 1 : Enregistrer une catégorie
Pour enregistrer une catégorie dans votre application, utilisez une approche similaire à la suivante :
1
2
3
4
5
6
7
8
9
10
Braze.Notifications.categories.insert(
.init(identifier: "LIKE_CATEGORY",
actions: [
.init(identifier: "LIKE_IDENTIFIER", title: "Like", options: [.foreground]),
.init(identifier: "UNLIKE_IDENTIFIER", title: "Unlike", options: [.foreground])
],
intentIdentifiers: []
)
)
UNUserNotificationCenter.current().setNotificationCategories(Braze.Notifications.categories)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
NSMutableSet<UNNotificationCategory *> *categories = [BRZNotifications.categories mutableCopy];
UNNotificationAction *likeAction = [UNNotificationAction actionWithIdentifier:@"LIKE_IDENTIFIER"
title:@"Like"
options:UNNotificationActionOptionForeground];
UNNotificationAction *unlikeAction = [UNNotificationAction actionWithIdentifier:@"UNLIKE_IDENTIFIER"
title:@"Unlike"
options:UNNotificationActionOptionForeground];
UNNotificationCategory *likeCategory = [UNNotificationCategory categoryWithIdentifier:@"LIKE_CATEGORY"
actions:@[likeAction, unlikeAction]
intentIdentifiers:@[]
options:UNNotificationCategoryOptionNone];
[categories addObject:likeCategory];
[UNUserNotificationCenter.currentNotificationCenter setNotificationCategories:categories];
Lorsque vous créez une UNNotificationAction
, vous pouvez spécifier une liste d’options d’action. Par exemple, UNNotificationActionOptions.foreground
permet à vos utilisateurs d’ouvrir votre application après avoir appuyé sur le bouton d’action. Ceci est nécessaire pour les comportements de navigation au clic, tels que « Ouvrir l’application » et « Lien profond dans l’application ». Pour plus d’informations, voir UNNotificationActionOptions
.
Étape 2 : Sélectionnez vos catégories
Après avoir enregistré une catégorie, utilisez le tableau de bord Braze pour envoyer des notifications de ce type aux utilisateurs.
Vous n’avez besoin de définir des catégories de notification personnalisées que pour les boutons d’action avec actions spéciales, telles que le lien profond dans votre application ou l’ouverture d’une URL. Vous n’avez pas besoin de les définir pour les boutons d’action qui ne font que rejeter une notification.
- Dans le tableau de bord Braze, sélectionnez Messagerie > Notifications Push, puis choisissez votre campagne push iOS.
- Sous Composer une notification push, activez les Boutons d’action.
- Dans le menu déroulant Catégorie de notification iOS, sélectionnez Entrez la catégorie iOS personnalisée préenregistrée.
- Enfin, entrez l’une des catégories que vous avez créées plus tôt. L’exemple suivant utilise la catégorie personnalisée :
LIKE_CATEGORY
.
Personnalisation des badges
Les badges sont de petites icônes idéales pour attirer l’attention d’un utilisateur. Vous pouvez spécifier un nombre de badges dans la rubrique Paramètres lorsque vous composez une notification push à l’aide du tableau de bord de Braze. Vous pouvez également mettre à jour le nombre de badges manuellement par l’intermédiaire de la propriété applicationIconBadgeNumber
de votre application ou par le biais de la notification à distance.
Braze efface automatiquement le décompte des badges lorsqu’une notification Braze est reçue alors que l’application est au premier plan. Le fait de régler manuellement le numéro de badge sur 0 permet également d’effacer les notifications dans le centre de notification.
Si vous n’avez pas planifié une stratégie pour effacer les badges dans le cadre du fonctionnement normal de l’application ou en envoyant des notifications push qui effacent le badge, vous devez effacer le badge lorsque l’application devient active en ajoutant le code suivant à la méthode de délégationapplicationDidBecomeActive:
de votre application :
1
2
3
4
5
6
7
8
9
10
// For iOS 16.0+
let center = UNUserNotificationCenter.current()
do {
try await center.setBadgeCount(0)
} catch {
// Handle errors
}
// Prior to iOS 16. Deprecated in iOS 17+.
UIApplication.shared.applicationIconBadgeNumber = 0
1
2
3
4
5
6
7
8
9
10
// For iOS 16.0+
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
[center setBadgeCount:0 withCompletionHandler:^(NSError * _Nullable error) {
if (error != nil) {
// Handle errors
}
}];
// Prior to iOS 16. Deprecated in iOS 17+.
[UIApplication sharedApplication].applicationIconBadgeNumber = 0;
Personnalisation des sons
Étape 1 : Héberger le son dans votre application
Les sons de notification push personnalisés doivent être hébergés localement dans le bundle principal de votre application. Les formats de données audio suivants sont acceptés :
- Linear PCM
- MA4
- µLaw
- aLaw
Vous pouvez regrouper les données audio dans un fichier AIFF, WAV ou CAF. Dans Xcode, ajoutez le fichier audio à votre projet comme ressource non localisée du lot d’applications.
Les sons personnalisés doivent durer moins de 30 secondes lorsqu’ils sont joués. Si un son personnalisé dépasse cette limite, le son système par défaut est joué à la place.
Conversion de fichiers audio
Vous pouvez utiliser l’outil afconvert pour convertir les sons. Par exemple, pour convertir le système PCM linéaire 16 bits Submarine.aiff en audio IMA4 dans un fichier CAF, utilisez la commande suivante dans le terminal :
1
afconvert /System/Library/Sounds/Submarine.aiff ~/Desktop/sub.caf -d ima4 -f caff -v
Vous pouvez inspecter un son pour déterminer son format de données en l’ouvrant dans QuickTime Player et en choisissant Afficher l’inspecteur de film dans le menu Film.
Étape 2 : Fournissez une URL de protocole pour le son
Vous devez spécifier une URL de protocole qui dirige vers l’emplacement/localisation du fichier son dans votre application. Il existe deux méthodes pour ce faire :
- Utilisez le paramètre
sound
de l’objet Apple push pour transmettre l’URL à Braze. - Spécifiez l’URL dans le tableau de bord. Dans le compositeur push, sélectionnez Paramètres et saisissez l’URL du protocole dans le champ Son.
Si le fichier son spécifié n’existe pas ou si le mot-clé « default » est saisi, Braze utilisera le son d’alerte par défaut du appareil. En dehors de notre tableau de bord, le son peut également être configuré via notre [API d’envoi de messages][12].
Pour plus d’informations, consultez la documentation du développeur Apple concernant la préparation de sons d’alerte personnalisés.
Paramètres
Lorsque vous créez une campagne push via le tableau de bord, cliquez sur l’onglet Paramètres à l’étape Composer pour afficher les paramètres avancés disponibles.
Paires clé-valeur
Braze vous permet d’envoyer des paires clé-valeur définies de manière personnalisée sous forme de chaînes de caractères, appelées extras
, ainsi qu’une notification push à votre application. Des éléments supplémentaires peuvent être définis via le tableau de bord ou l’API et seront disponibles en tant que paires clé-valeur dans le dictionnaire notification
transmis à vos implémentations de délégué de notification push.
Options d’alerte
Sélectionnez la case à cocher Options d’alerte pour voir une liste déroulante des paires clé-valeur disponibles pour ajuster l’apparence de la notification sur les appareils.
Ajouter un indicateur de contenu disponible
Cochez la case Ajouter un indicateur de contenu disponible pour indiquer aux appareils de télécharger le nouveau contenu en arrière-plan. Le plus souvent, vous pouvez cocher cette case si vous souhaitez envoyer des notifications silencieuses.
Ajouter un indicateur de contenu mutable
Cochez la case Ajouter un indicateur de contenu mutable pour activer la personnalisation avancée du récepteur. Cet indicateur sera automatiquement envoyé lors de la composition d’une notification enrichie, quelle que soit la valeur de cette case à cocher.
ID de réduction
Spécifiez un ID de réduction pour fusionner les notifications similaires. Si vous envoyez plusieurs notifications avec le même ID de réduction, l’appareil affichera uniquement la notification la plus récemment reçue. Reportez-vous à la documentation d’Apple sur les notifications groupées.
Expiration
Cocher la case Expiration permettra de définir une durée d’expiration pour votre message. Si l’appareil d’un utilisateur perd sa connexion, Braze continuera d’essayer d’envoyer le message jusqu’à l’heure spécifiée. Si cette option n’est pas définie, la plateforme établit par défaut un délai d’expiration de 30 jours. Notez que les notifications push expirant avant la livraison ne sont pas considérées comme ayant échoué et ne seront pas enregistrées comme une non-remise.
Conditions préalables
Avant de pouvoir utiliser cette fonctionnalité, vous devrez intégrer le SDK Android Braze. Vous devrez également configurer les notifications push.
Paramètres
De nombreux paramètres avancés sont disponibles pour les notifications push de FireOS envoyées via le tableau de bord de Braze. Le présent article décrit ces fonctionnalités et la manière de les utiliser avec succès.
TTL (Durée de vie)
Le champ Durée en vie (TTL) vous permet de définir une durée personnalisée de stockage des messages avec le service de messagerie push. Les valeurs par défaut pour la durée de vie sont de quatre semaines pour FCM et de 31 jours pour ADM.
Texte récapitulatif
Le texte récapitulatif vous permet de définir un texte supplémentaire dans la vue de notification étendue. Il sert également de légende pour les notifications avec des images.
Le texte récapitulatif s’affiche sous le corps du message dans la vue étendue.
Pour les notifications push qui incluent des images, le texte du message s’affiche dans la vue réduite tandis que le texte récapitulatif s’affiche comme légende d’image lorsque la notification est étendue.
URI personnalisés
La fonctionnalité URI personnalisé vous permet de spécifier une URL Web ou une ressource Android vers laquelle naviguer lorsque l’on clique sur la notification. Si aucun URI personnalisé n’est spécifié, cliquer sur la notification amène les utilisateurs dans votre application. Vous pouvez utiliser l’URI personnalisé pour créer un lien profond à l’intérieur de votre application et diriger les utilisateurs vers des ressources qui existent en dehors de votre application. Ceci peut être spécifié via l’API Messages ou notre tableau de bord sous Paramètres avancés dans le compositeur de push comme illustré :
Priorité d’affichage de la notification
Le paramètre de priorité d’affichage de notification n’est plus utilisé sur les appareils exécutant Android O ou plus récents. Pour les appareils plus récents, définissez la priorité par le biais de la configuration du canal de notification.
Le niveau de priorité d’une notification push affecte la manière dont votre notification est affichée dans la barre de notification par rapport à d’autres notifications. Il peut également affecter la vitesse et la manière de livrer, car les messages normaux et moins prioritaires peuvent être envoyés avec une latence légèrement plus élevée ou groupés pour préserver la durée de vie de la batterie, alors que les messages haute priorité sont toujours envoyés immédiatement.
Dans Android O, la priorité de notification est devenue une propriété des canaux de notification. Vous devrez travailler avec votre développeur pour définir la priorité d’un canal pendant sa configuration, puis utiliser le tableau de bord pour sélectionner le canal approprié lors de l’envoi de vos sons de notification. Pour les appareils fonctionnant avec des versions d’Android antérieures à O, la spécification d’un niveau de priorité pour les notifications FireOS est possible via le tableau de bord de Braze et l’API d’envoi de messages.
Pour envoyer un message à l’ensemble de votre base d’utilisateurs avec une priorité spécifique, nous vous recommandons de spécifier indirectement la priorité via la configuration du canal de communication (pour cibler les appareils O+) et d’ envoyer la priorité individuelle à partir du tableau de bord (pour cibler les appareils <O).
Les niveaux de priorité que vous pouvez définir sur les notifications push de Fire OS sont les suivants :
Priorité | Description ou utilisation prévue | Valeur de priority (pour les messages API) |
---|---|---|
Max | Messages urgents ou à délai de réponse critique | 2 |
Élevée | Communication importante, telle que le nouveau message d’un ami | 1 |
Par défaut | La plupart des notifications : utilisez « par défaut » si votre message ne tombe pas explicitement dans les autres types de priorité | 0 |
Faible | Informations que vous voulez que les utilisateurs connaissent, mais ne nécessitant pas d’action immédiate | -1 |
Min | Informations contextuelles ou d’arrière-plan. | -2 |
Pour plus d’informations, consultez la documentation de Google sur les notifications Android.
Sons
Dans Android O, les sons de notification sont devenus une propriété des canaux de notification. Vous devrez travailler avec votre développeur pour définir le son d’un canal pendant sa configuration, puis utiliser le tableau de bord pour sélectionner le canal approprié lors de l’envoi de vos notifications.
Pour les appareils fonctionnant dans des versions d’Android antérieures à O, Braze vous permet de définir le son d’un message de notification push individuel via le composeur du tableau de bord. Vous pouvez le faire en spécifiant une ressource sonore locale sur l’appareil (par exemple, android.resource://com.mycompany.myapp/raw/mysound
). Spécifier « par défaut » dans ce champ jouera le son de notification par défaut sur l’appareil. Cela peut être spécifié via l’API Messages ou le tableau de bord sous Paramètres dans le compositeur de push.
Saisissez l’URI complet de la ressource sonore (par exemple, android.resource://com.mycompany.myapp/raw/mysound
) dans l’invite du tableau de bord.
Pour envoyer un message à l’ensemble de votre base d’utilisateurs avec un son spécifique, nous vous recommandons de spécifier indirectement le son via la configuration du canal de communication (pour cibler les appareils O+) et d’ envoyer le son individuel à partir du tableau de bord (pour cibler les appareils <O).