# Braze Documentation Index of all Developer Guide pages and their headings. ## Developer Guide - [Guide du développeur Braze](/docs/fr/developer_guide/home/index.md) - [Démarrage](/docs/fr/developer_guide/getting_started/index.md): Vous pouvez suivre ce guide, ou consulter Braze Learning pour des cours guidés, tels que nos parcours d'apprentissage Marketeur et Développeur. - [Présentation du SDK pour les développeurs](/docs/fr/developer_guide/getting_started/sdk_overview/index.md): Vous êtes marketeur et cherchez un aperçu de base du SDK ? Consultez plutôt notre présentation pour les marketeurs. - # ![Cours d'apprentissage Braze](https://learning.braze.com/path/developer/sdk-integration-basics){: style="float:right;width:120px;border:0;" class="noimgborder"}Aperçu du SDK pour les développeurs {#braze-learning-course-imagebuster-assetsimgblicon3png-httpslearningbrazecompathdevelopersdk-integration-basics-stylefloatrightwidth120pxborder0-classnoimgbordersdk-overview-for-developers} - ## Performances applicatives {#app-performance} - ## Compatibilité du SDK {#sdk-compatibility} - ## Analyses par défaut et gestion de session {#default-analytics-and-session-handling} - ## Envoi et réception des données {#data-upload-and-download} - ## Blocage de la collecte des données {#blocking-data-collection} - ## Quelle est la version du SDK que j'utilise ? {#what-version-of-the-sdk-am-i-on} - [Aperçu de la plateforme](/docs/fr/developer_guide/getting_started/platform_overview/index.md): Consultez notre parcours d'apprentissage gratuit pour les développeurs ainsi que ces articles. - # ![Cours d'apprentissage Braze](https://learning.braze.com/path/developer){: style="float:right;width:120px;border:0;" class="noimgborder"}Premiers pas : Aperçu de la plateforme {#braze-learning-course-imagebuster-assetsimgblicon3png-httpslearningbrazecompathdeveloper-stylefloatrightwidth120pxborder0-classnoimgbordergetting-started-platform-overview} - ## Qu'est-ce que Braze ? {#what-is-braze} - ### SDK - ### Interface utilisateur du tableau de bord {#dashboard-user-interface} - ### REST API - ## Analyse des données et action {#data-analysis-and-action} - ### Analyse des applications {#app-analytics} - ### Segmentation utilisateur {#user-segmentation} - ## Communication multicanale {#multichannel-messaging} - ### Composants personnalisables {#customizable-components} - ## Intégration de Braze {#integrating-braze} - ## Ressources à mettre en favoris {#resources-to-bookmark} - [Présentation de l'intégration](/docs/fr/developer_guide/getting_started/integration_overview/index.md): !Diagramme de Venn avec quatre cercles (découverte, intégration, assurance qualité et maintenance) centré sur le délai de rentabilisation.{: style="max-width:50%;float:right;margin-left:15px;border:none;"} - # ![Cours d'apprentissage de Braze](https://learning.braze.com/sdk-integration-basics){: style="float:right;width:120px;border:0;" class="noimgborder"} Premiers pas : Présentation de l'intégration {#braze-learning-course-imagebuster-assetsimgblicon3png-httpslearningbrazecomsdk-integration-basics-stylefloatrightwidth120pxborder0-classnoimgbordergetting-started-integration-overview} - ## Découverte et planification {#discovery} - ### Planification des campagnes {#campaign-planning} - ### Créer des exigences en matière de données {#creating-data-requirements} - ### Planification des personnalisations {#customizations-planning} - ### Obtenir l'accès au tableau de bord {#getting-dashboard-access} - ### Espaces de travail et clés API {#workspaces-and-api-keys} - ## Intégration {#integration} - ### Partenaires d'intégration CDP {#cdp-integration-partners} - ### Intégration du SDK Braze {#braze-sdk-integration} - ### Utiliser l'API de Braze {#using-the-braze-api} - ### Mise en place de l'analytique produit {#setting-up-product-analytics} - ### Migration des données utilisateur existantes {#migrating-legacy-user-data} - ### Mise en place du suivi de session {#setting-up-session-tracking} - ### Suivi des événements personnalisés, des attributs et des événements d'achat {#tracking-custom-events-attributes-and-purchase-events} - ### Autres outils {#other-tools} - ## Assurance qualité {#qa} - ### Transmission de Braze aux marketeurs {#passing-braze-off-to-marketers} - ### Développer pour l'avenir {#develop-for-the-future} - ## Maintenance {#maintenance} - ## Limites de débit du SDK {#sdk-rate-limits} - ### Utilisateurs actifs par mois CY 24-25, MAU universel, MAU Web et MAU mobile {#monthly-active-users-cy-24-25-universal-mau-web-mau-and-mobile-mau} - ### Trouver vos limites de débit {#finding-your-rate-limits} - ### Demander une augmentation des limites de débit {#requesting-higher-rate-limits} - ### Modifications et assistance {#changes-and-support} - [Vue d'ensemble architecturale](/docs/fr/developer_guide/getting_started/architecture_overview/index.md): Globalement, Braze est une plateforme orientée données. La plateforme Braze, alimentée par le SDK, la REST API et les intégrations partenaires, vous permet d'agréger et d'exploiter vos données. - # Démarrage : Vue d'ensemble architecturale {#getting-started-architectural-overview} - ## Ingestion de données {#ingestion} - ### Répartition des sources de données {#data-source-breakdown} - #### Fonctionnalités basées sur MongoDB {#mongodb-powered-features} - #### Fonctionnalités optimisées par Snowflake {#snowflake-powered-features} - ### Sources de données backend via l'API Braze {#backend-data-sources-through-the-braze-api} - ### Sources de données frontend via le SDK Braze {#frontend-data-sources-through-braze-sdk} - ### Intégrations partenaires {#partner-integrations} - ### Connexion directe à l'entrepôt via l'Ingestion de données cloud de Braze {#direct-warehouse-connection-through-braze-cloud-data-ingestion} - ## Classification {#classification} - ## Orchestration {#orchestration} - ### Indicateurs de fonctionnalité {#feature-flags} - ## Personnalisation {#personalization} - ## Action {#action} - ### Canaux de communication {#messaging-channels} - ## Exportation des données {#exporting-data} - ### Currents - ### Partage de données Snowflake {#snowflake-data-sharing} - ### API d'exportation Braze {#braze-export-apis} - ### CSV {#csvs} - ## Tout mettre en perspective {#putting-it-all-together} - [Créer avec un LLM](/docs/fr/developer_guide/getting_started/build_with_llm/index.md): Les assistants de codage basés sur l'intelligence artificielle peuvent vous aider à écrire du code d'intégration, à résoudre des problèmes et à explorer les fonctionnalités du SDK Braze, mais uniquement s'ils disposent du contexte approprié. Le serveur Braze Docs MCP permet à votre assistant d'intelligence artificielle d'accéder directement à la documentation Braze, afin qu'il puisse générer des extraits de code précis et répondre à des questions techniques en se basant sur les dernières références SDK. - # Créer avec un LLM {#building-with-an-llm} - ## Connexion au Braze Docs MCP {#connecting-to-the-braze-docs-mcp} - ### Configuration de Context7 {#setting-up-context7} - ## Rédiger des prompts pour le développement du SDK Braze {#writing-prompts-for-braze-sdk-development} - ### React Native SDK {#react-native-sdk} - #### Initialisation du SDK {#initializing-the-sdk} - #### Enregistrement d'événements personnalisés avec des propriétés {#logging-custom-events-with-properties} - #### Configuration des notifications push {#setting-up-push-notifications} - #### Gestion des messages in-app {#handling-in-app-messages} - ### Web SDK {#web-sdk} - #### Initialisation du SDK - #### Suivi des événements personnalisés et des achats {#tracking-custom-events-and-purchases} - #### Inscription aux notifications push Web {#registering-for-web-push} - #### Gestion des attributs utilisateur {#managing-user-attributes} - ## Documentation en texte brut {#plain-text-documentation} - [Aperçu de la personnalisation](/docs/fr/developer_guide/getting_started/customization_overview/index.md): Le SDK de Braze est une boîte à outils puissante, mais à un niveau élevé, il fournit deux fonctionnalités importantes : il aide à collecter et à synchroniser les données des utilisateurs entre les plateformes vers un profil utilisateur consolidé, et gère également les canaux d'envoi de messages tels que les messages in-app, les notifications push et les Content Cards. Les articles du guide de personnalisation partent du principe que vous avez déjà suivi le processus d'implémentation du SDK. - # Aperçu de la personnalisation {#customization-overview} - [Tutoriels SDK de Braze](/docs/fr/developer_guide/tutorials/index.md) - [Intégrer le SDK Braze](/docs/fr/developer_guide/sdk_integration/index.md): Pour consulter le contenu des fichiers README du SDK reproduit dans la documentation, voir Guides des dépôts. - # !Logo Braze{: style="float:right;width:120px;border:0;" class="noimgborder"}Intégrer le SDK Braze {#braze-logo-imagebuster-assetsbrazeprimaryiconblacksvg-stylefloatrightwidth120pxborder0-classnoimgborderintegrate-the-braze-sdk} - ## About the Web Braze SDK - ## Integrate the Web SDK - ### Step 1: Install the Braze library - ### Step 2: Initialize the SDK - #### Troubleshooting missing sessions for anonymous users - ### Prerequisites - ### Step 1: Open the tag template gallery - ### Step 2: Add the initialization tag template - ### Step 3: Configure the tag - ### Step 4: Choose initialization options - ### Step 5: Set to Trigger on all pages - ### Step 6: Verify your integration - ## Filtering bot traffic {#bot-filtering} - ### Limitations of SDK-side bot detection - ### Implementing bot filtering - #### Require user interaction - #### Custom bot detection - ### Best practices - ## Optional configurations - ### Logging - #### Basic logging - #### Custom logging - ## Upgrading the SDK - ## Other integration methods - ### Accelerated Mobile Pages (AMP) - #### Step 1: Include AMP web push script - #### Step 2: Add subscription widgets - #### Step 3: Add helper-iframe and permission-dialog - #### Step 4: Create a service worker file - #### Step 5: Configure the AMP web push HTML element - ### Asynchronous Module Definition (AMD) - #### Disable support - #### Module loader - ### Electron {#electron} - ### Jest framework {#jest} - ### SSR frameworks {#ssr} - #### Framework-agnostic dynamic import - #### Shared hook for Next.js and Remix - #### Next.js (App Router) - #### Next.js (Pages Router) - #### Remix - #### Logging events and updating users - ### Tealium iQ - ### Vite {#vite} - ### Other tag managers - ## Integrating the Android SDK - ### Step 1: Update your Gradle build configuration - ### Step 2: Configure your braze.xml - ### Step 3: Add permissions to AndroidManifest.xml - ### Step 4: Enable delayed initialization (optional) - #### Step 4.1: Update your braze.xml - #### Step 4.2: Configure push analytics (optional) - ##### Explicitly queue {#explicitly-queue-push-analytics} - ##### Drop {#drop-push-analytics} - #### Step 4.3: Manually initialize the SDK - ### Step 5: Enable user session tracking - ## Testing session tracking - ## Optional configurations - ### Runtime configuration - ### Google Advertising ID - ### Location tracking - ### Logging - #### Enabling logs - #### Verifying verbose logs - #### Suppressing logs - ### Multiple API keys - ### Exclusive in-app message TalkBack - ### R8 and ProGuard - ## Integrating the Swift SDK - ### Prerequisites - ### Step 1: Install the Braze Swift SDK - #### Step 1.1: Import SDK version - #### Step 1.2: Select your packages - ##### About Extension libraries - #### Step 1.1: Install CocoaPods - #### Step 1.2: Constructing the Podfile - ##### About additional libraries - ###### Extension libraries - #### Step 1.3: Install the SDK - #### Updating the SDK using CocoaPods - #### Step 1.1: Download the Braze SDK - #### Step 1.2: Choose your frameworks - #### Step 1.3: Prepare your files - #### Step 1.4: Integrate your frameworks - #### Common errors for Objective-C projects - ### Step 2: Set up delayed initialization (optional) - #### Step 2.1: Prepare for delayed initialization - #### Step 2.2: Configure push analytics behavior (optional) - ##### Explicitly queue - ##### Drop - #### Step 2.3: Customize push automation (optional) - #### Step 2.4: Initialize the SDK - ### Step 3: Update your app delegate - ## Optional configurations - ### Logging - #### Log levels - #### Setting the log level - ## Integrating the Cordova SDK - ### Prerequisites - ### Step 1: Add the SDK to your project - ### Step 2: Configure your project - ## Platform-specific syntax - ### Integers - ### Booleans - ## Optional configurations {#optional} - ## Disabling automatic session tracking (Android only) {#disable-automatic-session-tracking} - ## About the Flutter Braze SDK - ## Integrating the Flutter SDK - ### Prerequisites - ### Step 1: Integrate the Braze library - ### Step 2: Complete native SDK setup - #### 2.1 Set up Android - ##### Provide credentials at compile time - ##### Provide credentials at runtime - #### 2.2 Set up iOS - #### 2.1 Set up Android - #### 2.2 Set up iOS - ### Step 3: Set up the plugin - #### Standard initialization - #### Delayed initialization - #### Platform-specific API keys - #### Re-initialization - ## Testing the integration - ## About the React Native Braze SDK - ## New Architecture compatibility - ## React and React Native version requirements - ## Integrating the React Native SDK - ### Prerequisites - ### Step 1: Integrate the Braze library - ### Step 2: Complete native setup - #### Method 1: Using the Expo plugin {#reactnative-using-the-expo-plugin} - ##### 2.1 Install the Braze Expo plugin - ##### 2.2 Add the plugin to your app.json - ###### Configuring Android push notification icons {#android-push-icons} - ##### 2.3 Build and run your application - #### Method 2: Using React Native CLI {#reactnative-using-react-native-cli} - ##### Set up Android - ##### Set up iOS - #### Method 1: Using the Expo plugin - ##### Step 2.1: Install the Braze Expo plugin - ##### Step 2.2: Add the plugin to your app.json - ###### Configuring Android push notification icons - ##### Step 2.3: Build and run your application - #### Method 2: Using React Native CLI - ##### Set up Android - ##### Set up iOS - ### Step 3: Initialize the SDK - #### Standard initialization - #### Delayed initialization - #### Platform-specific API keys - #### Re-initialization - ### Step 4: Test the integration (optional) - ## Next steps - ## Integrating the Roku SDK - ### Step 1: Add files - ### Step 2: Add references - ### Step 3: Configure - ### Step 4: Initialize Braze - ## Optional configurations - ### Logging - ## About the Unity Braze SDK - ## Integrating the Unity SDK - ### Prerequisites - ### Step 1: Choose your Braze Unity package - ### Step 2: Import the package - ### Step 3: Configure the SDK - #### Step 3.1: Configure AndroidManifest.xml - #### Step 3.2: Update AndroidManifest.xml with your package name - #### Step 3.3: Add gradle dependencies - #### Step 3.4: Automate the Unity Android integration - #### Step 3.1: Set your API key - ## Customizing the Unity package - ### Step 1: Clone the repository - ### Step 2: Export package from repository - ### Step 3: Import package into Unity - ## Switch to an automated integration (Swift only) {#automated-integration} - ## Optional configurations - ### Verbose logging - ### Prime 31 compatibility - ### Amazon Device Messaging (ADM) - ### Extending the Braze Unity player (Android only) {#extend-unity-player} - ## Troubleshooting - ### Error: "File could not be read" - ## Integrating the .NET MAUI SDK - ### Prerequisites - ### Step 1: Get the .NET MAUI binding - ### Step 2: Configure your Braze instance - #### Step 2.1: Configure the Braze SDK in Braze.xml - #### Step 2.2: Add required permissions to Android manifest - #### Step 2.3: Track user sessions and registering for in-app messages - ### Step 3: Test the integration - # ChatGPT app integration - ## Setup - ### Step 1: Get the Braze integration file - ### Step 2: Install dependencies - ## Implementation - ### Client-side integration (custom widgets) - #### Configure widget metadata - #### Set up the useBraze hook - #### Display Braze Content Cards - #### Track widget events - ### Server-side integration (MCP server) - #### Set up session information - #### Track user interactions - #### Track purchases and transactions - ## About the Braze Vega SDK - ## Integrating the Braze Vega SDK - ### Step 1: Install the Braze library - ### Step 2: Initialize the SDK - ## Optional configurations - ### Logging - #### Enable logging during initialization - #### Enable logging after initialization - #### Custom logging - ### Configuration options - ## Upgrading the SDK - ## Testing your integration - [Google Tag Manager avec le SDK Braze](/docs/fr/developer_guide/sdk_integration/google_tag_manager/index.md): Google Tag Manager (GTM) lets you remotely add, remove, and edit tags on your website without requiring a production code release or engineering resources. Braze offers the following templates for the Web SDK: - # Google Tag Manager avec le SDK Braze {#google-tag-manager-with-the-braze-sdk} - ## About Google Tag Manager for Web {#google-tag-manager} - ## Tag sequencing for Braze action tags - ## Log purchases with GTM - ## Logging custom events with GTM - ### Step 1: Push the event to the data layer - ### Step 2: Create a trigger in GTM - ### Step 3: Create a Custom HTML tag - ## Google's EU User Consent Policy - ## Prerequisites - ## Using Google Tag Manager for Android - ### Step 1: Create a trigger for custom events - ### Step 2: Log custom attributes - ### Step 3: Call changeUser() - ### Step 4: Add a custom tag provider {#adding-android-google-tag-provider} - ## Prerequisites - ## Using Google Tag Manager for Swift - ### Step 1: Create a trigger for custom events - ### Step 2: Log custom attributes - ### Step 3: Call changeUser() - ### Step 4: Add a custom tag provider {#adding-ios-google-tag-provider} - ## Résolution des problèmes {#troubleshooting} - [Configurer l'authentification pour le SDK Braze](/docs/fr/developer_guide/sdk_integration/authentication/index.md): Après avoir activé cette fonctionnalité dans votre application, vous pouvez configurer le tableau de bord de Braze pour qu'il rejette toute requête avec un jeton Web JSON (JWT) invalide ou manquant, ce qui inclut : - # Configurer l'authentification SDK {#set-up-sdk-authentication} - ## Fonctionnement {#how-it-works} - ## Mise en place de l'authentification {#setting-up-authentication} - ### Étape 1 : Configurez votre serveur {#server-side-integration} - #### Étape 1.1 : Générer une paire de clés publiques/privées {#generate-keys} - #### Étape 1.2 : Créer un jeton Web JSON pour l'utilisateur actuel {#create-jwt} - ### Étape 2 : Configurer le SDK {#sdk-integration} - #### Étape 2.1 : Activer l'authentification dans le SDK Braze {#step-21-enable-authentication-in-the-braze-sdk} - #### Étape 2.2 : Définir le JWT de l'utilisateur actuel {#step-22-set-the-current-users-jwt} - #### Étape 2.3 : Enregistrer une fonction de rappel pour les jetons invalides {#sdk-callback} - ### Étape 3 : Activer l'authentification dans le tableau de bord {#braze-dashboard} - #### Options d'application {#enforcement-options} - ## Gérer les clés publiques {#key-management} - ### Ajouter une clé publique {#adding-a-public-key} - ### Affecter une nouvelle clé principale {#assign-a-new-primary-key} - ### Supprimer une clé {#deleting-a-key} - ## Analyses {#analytics} - ## Codes d'erreur {#error-codes} - ## Foire aux questions (FAQ) {#faq} - #### Cette fonctionnalité doit-elle être activée sur toutes mes applications en même temps ? {#faq-app-by-app} - #### Que se passe-t-il pour les utilisateurs qui utilisent encore des versions antérieures de mon application ? {#faq-sdk-backward-compatibility} - #### Quelle expiration dois-je utiliser lors de la génération d'un JWT ? {#faq-expiration} - #### Que se passe-t-il si un JWT expire au milieu de la session d'un utilisateur ? {#faq-jwt-expiration} - #### Que se passe-t-il si mon intégration côté serveur est interrompue et que je ne peux plus créer de JWT ? {#faq-server-downtime} - #### Pourquoi cette fonctionnalité utilise-t-elle des clés publiques/privées plutôt que des secrets partagés ? {#faq-shared-secrets} - #### Comment les requêtes rejetées seront-elles relancées ? {#faq-retry-logic} - #### Est-il possible d'utiliser l'authentification SDK pour les utilisateurs anonymes ? {#faq-anonymous-users} - #### L'authentification SDK fonctionne-t-elle avec les alias d'utilisateur ? {#faq-aliases} - #### L'activation de l'authentification SDK bloque-t-elle la collecte d'activité non authentifiée ? {#faq-unauthenticated-collection} - [Débogage du SDK de Braze](/docs/fr/developer_guide/sdk_integration/debugging/index.md): Pour une analyse plus approfondie, vous pouvez également activer la journalisation détaillée afin de capturer les sorties détaillées du SDK et apprendre à lire les journaux détaillés pour des canaux spécifiques. - # Débogage du SDK de Braze {#debugging-the-braze-sdk} - ## Conditions préalables {#prerequisites} - ## Débogage du SDK de Braze - ### Étape 1 : Fermez votre application {#step-1-close-your-app} - ### Étape 2 : Créez une session de débogage {#step-2-create-a-debugging-session} - ### Étape 3 : Sélectionnez un utilisateur {#step-3-select-a-user} - ### Étape 4 : Relancez l'application {#step-4-relaunch-the-app} - ### Étape 5 : Reproduisez les étapes {#step-5-complete-the-reproduction-steps} - ### Étape 6 : Terminez votre session {#step-6-end-your-session} - ### Étape 7 : Partagez ou exportez votre session (facultatif) {#step-7-share-or-export-your-session-optional} - [Consignation prolixe](/docs/fr/developer_guide/sdk_integration/verbose_logging/index.md): Lorsque quelque chose ne fonctionne pas comme prévu, par exemple lorsqu'une notification push n'arrive pas, qu'un message in-app ne s'affiche pas ou que les données utilisateur ne se synchronisent pas, les journaux détaillés vous aident à identifier la cause profonde. Au lieu de deviner, vous pouvez observer précisément ce que fait le SDK à chaque étape. - # Consignation prolixe - ## Quand utiliser la journalisation détaillée - ## Activation de la journalisation détaillée - ## Collecte des journaux - ## Lecture des journaux détaillés - ## Partage des journaux avec le service d'assistance Braze - [Lecture des journaux détaillés](/docs/fr/developer_guide/sdk_integration/reading_verbose_logs/index.md): Avant de commencer, assurez-vous d'avoir activé la journalisation détaillée et de savoir comment collecter les journaux sur votre plateforme. - # Lecture des journaux détaillés {#reading-verbose-logs} - ## Sessions {#sessions} - ### Entrées de journal clés {#key-log-entries} - ### Éléments à vérifier {#what-to-check} - ## Notifications push {#push-notifications} - ### Enregistrement du jeton {#token-registration} - ### Éléments à vérifier - ### Distribution et clic push {#push-delivery-and-click} - ### Éléments à vérifier - ## Messages in-app {#in-app-messages} - ### Distribution des messages {#message-delivery} - ### Affichage et impression du message {#message-display-and-impression} - ### Événements de clic et de bouton {#click-and-button-events} - ### Éléments à vérifier - ## Content Cards - ### Synchronisation des cartes {#card-sync} - ### Impressions, clics et rejets {#impressions-clicks-and-dismissals} - ### Éléments à vérifier - ## Liens profonds {#deep-links} - ### Éléments à vérifier - ## Identification de l'utilisateur {#user-identification} - ## Requêtes réseau {#network-requests} - ### Structure de la requête {#request-structure} - ### Éléments à vérifier - ## Abréviations courantes des événements {#common-event-abbreviations} - ## Résolution des problèmes {#troubleshooting} - ### Quand un utilisateur peut-il avoir 0 session enregistrée sur son profil ? {#when-might-a-user-have-0-sessions-recorded-against-their-profile} - ### Divergences de données utilisateur lors de l'utilisation simultanée du SDK et de la REST API {#user-data-discrepancies-when-using-the-sdk-and-rest-api-together} - ### Les données n'atteignent pas Braze {#data-not-reaching-braze} - [Limites de débit du SDK Braze](/docs/fr/developer_guide/sdk_integration/rate_limits/index.md): La limite de débit du SDK Braze utilise les fonctionnalités suivantes pour optimiser les performances, minimiser la consommation de batterie, réduire l'utilisation des données et garantir une distribution fiable des données : - # Limites de débit du SDK Braze {#braze-sdk-rate-limits} - ## Comprendre les limites de débit du SDK {#understanding-sdk-rate-limits} - ### Traitement asynchrone {#asynchronous-processing} - ### Limitation adaptative du débit {#adaptive-rate-limiting} - ### Optimisations réseau {#networking-optimizations} - ## Bonnes pratiques {#best-practices} - ## Obtenir de l'aide {#getting-help} - [Intégrer Braze aux applications ChatGPT](/docs/fr/developer_guide/sdk_integration/chatgpt_apps/index.md): !Une carte de contenu intégrée à une application ChatGPT.{: style="float:right;max-width:30%;border:none;" } - # Intégrer Braze aux applications ChatGPT {#integrate-braze-with-chatgpt-apps} - ## Aperçu {#overview} - ### Principaux avantages {#key-benefits} - ## Conditions préalables {#prerequisites} - # ChatGPT app integration - ## Setup - ### Step 1: Get the Braze integration file - ### Step 2: Install dependencies - ## Implementation - ### Client-side integration (custom widgets) - #### Configure widget metadata - #### Set up the useBraze hook - #### Display Braze Content Cards - #### Track widget events - ### Server-side integration (MCP server) - #### Set up session information - #### Track user interactions - #### Track purchases and transactions - [À propos de la gestion des versions du SDK de Braze](/docs/fr/developer_guide/sdk_integration/version_management/index.md): Tous les SDK de Braze respectent la spécification de versionnement sémantique (SemVer). Pour un numéro de version MAJOR.MINOR.PATCH, voici nos recommandations : - # À propos de la gestion des versions {#about-version-management} - ## Recommandations en matière de versions {#versioning-recommendations} - ## Recevoir des notifications pour les nouvelles versions {#getting-notified-of-new-releases} - ## À propos des problèmes connus {#about-known-issues} - [Guide de mise à niveau vers Android 13](/docs/fr/developer_guide/platforms/android/android_13/index.md): Refer to the Android 13 developer documentation for a full migration guide. - # Upgrading to Android 13 - ## Android 13 Braze SDK - ## Changes in Android 13 - ### Push permission {#push-permission} - #### Permission prompt timing {#push-permission-timing} - ## Preparing for Android 13 {#next-steps} - [Mise à jour vers iOS 18](/docs/fr/developer_guide/platforms/swift/ios_18/index.md): La WWDC d'Apple a eu lieu du 9 au 11 juin 2024. Découvrez leurs annonces dans notre article de blog, ou poursuivez votre lecture pour savoir comment tirer parti d'iOS 18 avec Braze. - # Mise à jour vers iOS 18 {#upgrading-to-ios-18} - ## Changements dans iOS 18 {#changes-in-ios-18} - ### Activités en direct sur l'Apple Watch {#live-activities-on-apple-watch} - ### Apple Vision Pro - ### Notifications de l'iPhone sur macOS {#iphone-notifications-on-macos} - ### Apple Intelligence - [Support de visionOS](/docs/fr/developer_guide/platforms/swift/visionos/index.md): La plupart des fonctionnalités disponibles sur iOS sont également disponibles sur visionOS, notamment : - # Support de visionOS - ## Fonctionnalités entièrement prises en charge - ## Fonctionnalités partiellement prises en charge - ## Fonctions non prises en charge - [Guide de mise à jour SDK iOS 14](/docs/fr/developer_guide/platforms/swift/_archived_updates/ios_14/index.md): À partir d'iOS 14.5, la collecte d'IDFA et certains partages de données nécessiteront la nouvelle invite de permission du framework AppTrackingTransparency (en savoir plus). - # Guide de mise à jour SDK iOS 14 {#ios-14-sdk-upgrade-guide} - #### Résumé des changements majeurs d'iOS 14 {#summary-of-ios-14-breaking-changes} - ## Résumé de la mise à jour {#upgrade-summary} - ## Changements de comportement iOS 14 {#ios-14-behavior-changes} - ### Autorisation de localisation approximative {#approximate-location-permission} - #### Aperçu {#overview} - #### Géorepérages {#geofences} - #### Ciblage de localisation {#location-tracking} - ### Transparence du suivi des applications et IDFA {#idfa} - #### Aperçu - #### Modifications apportées au recueil de l'IDFA par Braze {#changes-to-braze-idfa-collection} - ### Autorisation push {#push-provisional-auth} - ## Nouvelles fonctionnalités iOS 14 {#ios-14-new-features} - ### Présentation de la confidentialité et de la collecte de données de l'application {#app-privacy} - #### Questionnaire sur le portail développeur d'Apple {#apple-developer-portal-questionnaire} - #### Collecte de données par défaut de Braze {#braze-default-data-collection} - #### Collecte de données facultative {#optional-data-collection} - [Guide de mise à niveau SDK iOS 15](/docs/fr/developer_guide/platforms/swift/_archived_updates/ios_15/index.md): Dans le cadre de nos tests annuels des versions bêta d'iOS, nous avons identifié une modification apportée par Apple qui fait que certaines barres de navigation de l'interface utilisateur apparaissent transparentes au lieu d'opaques. Cela sera visible sur iOS 15 lors de l'utilisation de l'interface utilisateur par défaut de Braze pour les Content Cards, ou lorsque les liens profonds web sont ouverts à l'intérieur de votre application au lieu d'une application de navigateur séparée. - # Guide de mise à niveau SDK iOS 15 {#ios-15-sdk-upgrade-guide} - ## Changements de transparence dans les navigations de l'interface utilisateur {#transparency-changes-to-ui-navigations} - ## Nouveaux paramètres de notification {#notification-settings} - ### Modes de concentration {#focus-mode} - ### Niveaux d'interruption {#interruption-levels} - ### Résumé des notifications {#notification-summary} - ## Boutons de localisation {#location-buttons} - ### Utilisation des boutons de localisation avec Braze {#using-location-buttons-with-braze} - ## Apple Mail {#mail} - ## Localisation de l'adresse IP dans Safari {#safari-ip-address-location} - [Guide de mise à niveau iOS 16](/docs/fr/developer_guide/platforms/swift/_archived_updates/ios_16/index.md): Apple a annoncé deux changements concernant sa fonctionnalité de notification push Web. - # Guide de mise à jour du SDK iOS 16 {#ios-16-sdk-upgrade-guide} - ## Modifications dans iOS 16 {#changes-in-ios-16} - ### Notifications push Web Safari {#safari-web-push} - #### Notifications push Web sur ordinateur de bureau (macOS) {#macos-push} - #### Notifications push Web sur appareil mobile (iOS et iPadOS) {#ios-push} - ## Préparation pour iOS 16 {#next-steps} - [Guide de mise à jour iOS 17](/docs/fr/developer_guide/platforms/swift/_archived_updates/ios_17/index.md): Le SDK Swift et le SDK Objective-C de Braze sont tous deux rétrocompatibles avec Xcode 14 et Xcode 15, et ils sont compatibles avec les appareils iOS 17. - # Guide de mise à jour d'iOS 17 - ## Compatibilité iOS 17 et Xcode 15 - ## Changements dans iOS 17 - ### Suivi des liens et dépouillement des paramètres UTM - ### Transparence du suivi des applications - #### Manifeste de confidentialité - #### Signature du code - ### SDK de Braze et protection de la vie privée - [Intégration des extensions de navigateur pour le Web](/docs/fr/developer_guide/platforms/web/browser_extensions/index.md): Intégrez le SDK Braze pour le Web au sein de votre extension de navigateur pour collecter des données d'analyse et afficher des messages enrichis aux utilisateurs. Cela comprend les extensions Google Chrome et les modules complémentaires Firefox. - # Extension de navigateur {#browser-extension} - ## Ce qui est pris en charge {#whats-supported} - ## Ce qui n'est pas pris en charge {#whats-not-supported} - ## Types d'extensions {#extension-types} - ## Autorisations {#permissions} - ## Démarrage {#getting-started} - ### Fenêtres contextuelles d'extension {#popup} - ### Script d'arrière-plan (Manifest v2 uniquement) {#background-script} - ### Page d'options {#options-page} - ## Initialisation {#initialization} - ## Notification push {#push} - [En-têtes de la politique de sécurité du contenu pour le Web](/docs/fr/developer_guide/platforms/web/content_security_policy/index.md): Cet article est destiné aux développeurs travaillant sur des sites web qui appliquent des règles CSP et s'intègrent à Braze. Il ne constitue pas un guide sur la manière dont vous devez aborder la sécurité. - # En-têtes de la politique de sécurité du contenu {#content-security-policy-headers} - ## Attributs nonce {#nonce} - ## Directives {#directives} - ### connect-src {#connect-src} - ### script-src {#script-src} - ### img-src {#img-src} - ## Font Awesome {#font-awesome} - [Accessibilité](/docs/fr/developer_guide/platforms/web/accessibility/index.md): Le SDK Web Braze est conforme aux normes définies par les directives d'accessibilité du contenu Web (WCAG 2.1). Nous maintenons un score Lighthouse de 100/100 pour les Content Cards et les messages in-app sur toutes nos nouvelles versions afin de respecter notre norme d'accessibilité. - # Accessibilité {#accessibility} - ## Conditions préalables {#prerequisites} - ### Corrections notables en matière d'accessibilité {#notable-accessibility-fixes} - ## Fonctionnalités d'accessibilité prises en charge {#supported-accessibility-features} - ## Directives d'accessibilité pour les intégrations SDK {#accessibility-guidelines-for-sdk-integrations} - ### Content Cards - #### Définition d'une hauteur maximale {#setting-a-maximum-height} - #### Considérations relatives à la fenêtre d'affichage {#viewport-considerations} - ### Messages in-app {#in-app-messages} - ### Considérations relatives aux appareils mobiles {#mobile-considerations} - #### Conception réactive {#responsive-design} - ### Tests d'accessibilité {#testing-accessibility} - #### Liste de contrôle pour les tests manuels {#manual-test-checklist} - ### Problèmes courants d'accessibilité {#common-accessibility-issues} - [Prise en charge de la TV connectée pour le SDK Web Braze](/docs/fr/developer_guide/platforms/web/smart_tvs/index.md): Pour une référence technique complète, consultez notre documentation JavaScript ou nos exemples d'applications pour voir le SDK Web fonctionner sur un téléviseur. - # Prise en charge de la TV connectée - ## Prerequisites - ## Configuration du SDK de Braze Web - ## Analyse - ## Messages in-app et cartes de contenu - [Intégrations TV et OTT pour Braze](/docs/fr/developer_guide/platforms/tv_and_ott/index.md): Voici la liste des fonctionnalités et canaux de communication pris en charge aujourd'hui. - # Intégrations TV et OTT {#tv-and-ott-integrations} - ## Plateformes et fonctionnalités {#platforms-and-features} - ## Guides d'intégration {#integration-guides} - ### Amazon Fire TV {#fire-tv} - ### Kindle Fire {#kindle-fire} - ### Android TV {#android-tv} - ### LG webOS {#lg-webos} - ### Samsung Tizen {#tizen} - ### Roku {#roku} - ### Apple TV OS {#tvos} - ### Apple Vision Pro {#vision-pro} - ## Ciblage des applications {#app-targeting} - ## Interface utilisateur Headless {#custom-ui} - [Aperçu de l’intégration pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/initial_sdk_setup/overview/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - [Intégration de Carthage pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/initial_sdk_setup/installation_methods/carthage_integration/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Intégration de Carthage - ## Importer le SDK - ### Versions précédentes - ## Étapes suivantes - ## Intégration principale uniquement - [Intégration de CocoaPods pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/initial_sdk_setup/installation_methods/cocoapods/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Intégration de CocoaPods {#cocoapods-integration} - ## Étape 1 : Installer CocoaPods {#step-1-install-cocoapods} - ## Étape 2 : Construire le Podfile {#step-2-constructing-the-podfile} - #### Sous-spécifications {#subspecs} - ## Étape 3 : Installer le SDK Braze {#step-3-installing-the-braze-sdk} - ## Étapes suivantes {#next-steps} - ## Mettre à jour le SDK Braze via CocoaPods {#updating-the-braze-sdk-via-cocoapods} - [Intégration du Gestionnaire de paquets Swift pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/initial_sdk_setup/installation_methods/swift_package_manager/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Intégration du Gestionnaire de paquets Swift - ## Étape 1 : Ajouter la dépendance à votre projet - ### Importer la version SDK - ### Sélectionner les paquets - ## Étape 2 : Configuration de votre projet - ## Étape 3 : Modification du schéma de la cible - ## Étapes suivantes - [Options d’intégration manuelle pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/initial_sdk_setup/installation_methods/manual_integration_options/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Intégration manuelle - ## Étape 1 : Téléchargement du SDK Braze - ### Option 1 : XCFramework dynamique - ### Option 2 : XCFramework statique pour l’intégration statique - ## Étape 2 : Ajouter les bibliothèques iOS requises - ### Intégration de SDWebImage - ### Suivi facultatif de la localisation - ## Étape 3 : Objective-C bridging header - ## Étapes suivantes - [Terminer l'intégration du SDK iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/initial_sdk_setup/completing_integration/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Terminer l'intégration {#complete-the-integration} - ## Étape 1 : Mettre à jour le délégué de votre application {#step-1-update-your-app-delegate} - ## Étape 2 : Spécifier votre cluster de données {#step-2-specify-your-data-cluster} - ### Configuration de l'endpoint à la compilation (recommandée) {#compile-time-endpoint-configuration-recommended} - ### Configuration de l'endpoint à l'exécution {#runtime-endpoint-configuration} - ## Intégration SDK terminée {#sdk-integration-complete} - ## Personnaliser Braze au démarrage {#customizing-braze-on-startup} - ## Appboy.sharedInstance() et la nullabilité Swift {#appboysharedinstance-and-swift-nullability} - ## Ressources complémentaires {#additional-resources} - [Autres personnalisations du SDK pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/initial_sdk_setup/other_sdk_customizations/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Autres personnalisations du SDK {#other-sdk-customizations} - ## Niveau de journalisation de Braze {#braze-log-level} - ### Niveaux de journalisation {#log-levels} - ### Journalisation prolixe {#verbose-logging} - ### Réglage du niveau de journalisation {#setting-log-level} - ## Collecte IDFV facultative - Swift {#optional-idfv-collection-swift} - ## Collecte IDFA facultative {#optional-idfa-collection} - ### iOS 14.5 AppTrackingTransparency - ### Implémentation de la collecte IDFA {#implementing-idfa-collection} - ##### Étape 1 : Implémenter ABKIDFADelegate {#step-1-implement-abkidfadelegate} - ##### Étape 2 : Définir le délégué lors de l'initialisation de Braze {#step-2-set-the-delegate-during-braze-initialization} - ## Taille approximative du SDK iOS {#ios-sdk-size} - [Guide d’intégration SDK de Braze pour iOS (facultatif)](/docs/fr/developer_guide/platforms/legacy_sdks/ios/initial_sdk_setup/ios_sdk_integration/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Guide d’intégration SDK de Braze pour iOS - ## Présentation de l’intégration - ### Créer BrazeManager.swift - ##### Créer BrazeManager.swift - ### Initialiser le SDK - ##### Initialiser le SDK à partir de BrazeManager.swift - ##### Gérer l’initialisation Appboy dans l’AppDelegate.swift - ### Notifications push - ##### Ajouter un certificat de notification push - ##### Inscrivez-vous aux notifications push - ##### Transférer les méthodes de notification push - ###### Étape 1 : Créer une extension pour le code de notification push - ###### Étape 2 : Support des notifications à distance - ###### Étape 3 : Gestion des notifications à distance - ###### Étape 4 : Transmettre les réponses à la notification - ### Accéder aux variables et méthodes utilisateur - ##### Créer des variables et des méthodes utilisateur - ### Enregistrer les analyses - ##### Créer une méthode d’événement personnalisé de journal - ##### Créer une méthode d’attributs personnalisés de journal - ##### Créez une méthode de journalisation des achats - ### in-app Messages - ##### Conforme à ABKinAppMessageUIDelegate - ##### Ajoutez des méthodes de délégation - ### Cartes de contenu - ##### Créez des variables et des méthodes de carte de contenu - ## Étapes suivantes - [Intégration Push pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/push_notifications/integration/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Intégration des notifications push {#push-integration} - ## Étape 1 : Téléchargez votre jeton APNs {#step-1-upload-your-apns-token} - ## Étape 2 : Activer les fonctionnalités de notification push {#step-2-enable-push-capabilities} - ## Étape 3 : S'inscrire aux notifications push {#step-3-register-for-push-notifications} - ### Utilisation du framework UserNotification (iOS 10+) {#using-usernotification-framework-ios-10} - ### Sans le framework UserNotifications {#without-usernotifications-framework} - ## Étape 4 : Enregistrer les jetons push avec Braze {#step-4-register-push-tokens-with-braze} - ## Étape 5 : Activer la gestion des notifications push {#step-5-enable-push-handling} - ### iOS 10+ - ### Pré-iOS 10 {#pre-ios-10} - ## Étape 6 : Liens profonds {#step-6-deep-linking} - ## Étape 7 : Tests unitaires (facultatif) {#step-7-unit-tests-optional} - [Personnalisation des notifications push iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/push_notifications/customization/index.md):

- [Boutons d’action push pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/push_notifications/customization/action_buttons/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Boutons d’action {#push-action-buttons-integration} - ## Étape 1 : Ajoutez les catégories de notifications push par défaut de Braze - ## Étape 2 : Activer la gestion interactive des notifications push - ## Personnalisation de la catégorie de notifications push - [Sons de notification Push personnalisés pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/push_notifications/customization/custom_sounds/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Sons personnalisés - ## Étape 1 : Héberger les sons dans l’application - ## Étape 2 : Fournir au tableau de bord une URL de protocole pour le son - [Notifications push enrichies pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/push_notifications/customization/rich_notifications/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Notifications enrichies iOS 10 - ## Création d’une extension de service - ## Configuration de l’extension de service - ### Configuration de l’extension de service pour travailler avec Braze - ### Exemple de code - ## Créer une notification enrichie dans votre tableau de bord - [Compte des badges de notification Push pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/push_notifications/customization/badges/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Badges - [Ignorer les notifications push internes Braze pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/push_notifications/customization/ignoring_internal_push/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Ignorer les notifications push internes de Braze - ## Vérifier votre application pour les actions automatiques - ## Utilisation des méthodes utilitaires de poussée interne de Braze - ## Exemple d’implémentation {#internal-push-implementation-example} - [Paramètres avancés de notification push](/docs/fr/developer_guide/platforms/legacy_sdks/ios/push_notifications/customization/advanced_settings/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Paramètres avancés {#advanced-settings} - ## Extraire des données à partir des paires clé-valeur de notifications push {#extracting-data-from-push-key-value-pairs} - ## Options d'alerte {#alert-options} - ## Ajouter un indicateur de contenu disponible {#adding-content-available-flag} - ## Ajouter un indicateur de contenu mutable {#adding-mutable-content-flag} - ## Mettre à jour le nombre de badges de l'application {#update-app-badge-count} - ## Sons {#sounds} - ## ID de réduction {#collapse-id} - ## Expiration {#expiry} - [Notifications push silencieuses pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/push_notifications/silent_push_notifications/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Notifications push silencieuses {#silent-push-notifications} - ## Envoi de notifications push silencieuses {#sending-silent-push-notifications} - ## Utiliser des notifications push silencieuses pour déclencher des tâches en arrière-plan {#use-silent-push-notifications-to-trigger-background-work} - ## Limitations des notifications silencieuses iOS {#ios-silent-notifications-limitations} - [Premières notifications push pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/push_notifications/push_primer/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Intégration de premières notifications push - ## Étape 1 : Ajouter un extrait de code dans le fichier AppDelegate.m - ## Étape 2 : Ajouter un vérificateur d'événements personnalisé au fichier AppDelegate.m - ## Étape 3 : Configurer un gestionnaire de liens profonds - [Push Stories pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/push_notifications/push_story/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Configurer une Push Story - ## Étape 1 : Activer les notifications push dans votre application - ## Étape 2 : Ajout de la cible de l’extension de contenu de notification - ## Étape 3 : Activer les fonctionnalités - ### Ajouter un groupe d'applications - ## Étape 4 : Ajouter l’infrastructure Push Story à votre application - ## Étape 5 : Mise à jour de votre contrôleur de visualisation de notification - ## Étape 6 : Définissez le storyboard d’extension de contenu de notification - ## Étape 7 : Définissez la plist d’extension de contenu de notification - ## Étape 8 : Mise à jour de l’intégration Braze dans votre application principale - ##### Option 1 : Exécution - ##### Option 2 : Info.plist - ## Étapes suivantes - [Implémentation avancée des notifications push pour iOS (facultatif)](/docs/fr/developer_guide/platforms/legacy_sdks/ios/push_notifications/implementation_guide/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Guide d'implémentation des notifications push {#push-notification-implementation-guide} - ## Extensions d'application de contenu de notification {#notification-content-app-extensions} - #### Conditions requises {#requirements} - ### Configuration de catégorie personnalisée {#custom-category-configuration} - ## Cas d'utilisation et guide d'implémentation {#use-case-and-implementation-walkthrough} - ### Notification push interactive {#interactive-push-notification} - #### Configuration du tableau de bord {#dashboard-configuration} - #### Autres cas d'utilisation {#other-use-cases} - ##### Prêt à enregistrer les analyses ? {#ready-to-log-analytics} - ### Notifications push personnalisées {#personalized-push-notifications} - #### Configuration du tableau de bord {#dashboard-configuration} - #### Gérer les paires clé-valeur {#handling-key-value-pairs} - #### Autres cas d'utilisation {#other-use-cases} - ##### Prêt à enregistrer les analyses ? {#ready-to-log-analytics} - ### Notification push de recueil d'informations {#information-capture-push-notification} - #### Configuration du tableau de bord {#dashboard-configuration} - #### Gérer les actions des boutons {#handling-button-actions} - ##### Rejet des notifications push {#dismissing-pushes} - #### Autres cas d'utilisation {#other-use-cases} - ##### Prêt à enregistrer les analyses ? {#ready-to-log-analytics} - ## Enregistrer les analyses {#logging-analytics} - ### Enregistrer avec l'API Braze (recommandé) {#logging-with-the-braze-api-recommended} - ### Enregistrement manuel {#logging-manually} - #### Étape 1 : Configurer les groupes d'applications dans Xcode {#step-1-configure-app-groups-within-xcode} - #### Étape 2 : Intégrer les extraits de code {#step-2-integrate-code-snippets} - ##### Enregistrement des événements personnalisés {#saving-custom-events} - ##### Envoi d'événements personnalisés à Braze {#sending-custom-events-to-braze} - ##### Enregistrer des attributs personnalisés {#saving-custom-attributes} - ##### Envoyer des attributs personnalisés à Braze {#sending-custom-attributes-to-braze} - ##### Enregistrer des attributs utilisateur {#saving-user-attributes} - ##### Envoyer des attributs utilisateur à Braze {#sending-user-attributes-to-braze} - ##### Fichiers d'aide {#helper-files} - [Test de notification Push pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/push_notifications/testing/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Tester {#push-testing} - [Tests de l’unité de notification Push pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/push_notifications/unit_tests/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Tests unitaires {#unit-tests} - ## Étape 1 : Création d’une cible de tests d’unités - ## Étape 2 : Ajoutez le SDK Braze à vos tests d’unité - ## Étape 3 : Ajoutez OCMock à vos tests d’unité - ## Étape 4 : Terminez la mise en place des bibliothèques ajoutées - ## Étape 5 : Ajouter des tests de notification push - ## Étape 6 : Exécuter la suite de test - [Résolution des problèmes de notification push pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/push_notifications/troubleshooting/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Résolution des problèmes {#push-troubleshooting} - ## Comprendre le flux de travail Braze/APNs {#understanding-the-brazeapns-workflow} - #### Étape 1 : Configurer le certificat push et le profil de provisionnement {#step-1-configuring-the-push-certificate-and-provisioning-profile} - #### Étape 2 : Les appareils s'enregistrent auprès des APNs et fournissent à Braze des jetons de notification push {#step-2-devices-register-for-apns-and-provide-braze-with-push-tokens} - #### Étape 3 : Lancer une Campaign push Braze {#step-3-launching-a-braze-push-campaign} - #### Étape 4 : Supprimer les jetons non valides {#step-4-removing-invalid-tokens} - ## Utiliser les journaux d'erreur de notification push {#utilizing-the-push-error-logs} - ## Problèmes d'enregistrement de notifications push {#push-registration-issues} - #### Pas d'invite d'enregistrement push {#no-push-registration-prompt} - #### Aucun utilisateur « push registered » affiché dans le tableau de bord {#no-push-registered-users-showing-in-the-dashboard} - ## Appareils ne recevant pas de notifications push {#devices-not-receiving-push-notifications} - #### Utilisateurs qui ne sont plus « push registered » après l'envoi d'une notification push {#users-no-longer-push-registered-after-sending-a-push-notification} - ##### Incohérence entre le tableau de bord et le certificat de l'application {#dashboard-and-app-certificate-mismatch} - ##### Désinstallations {#uninstalls} - ##### Régénération de votre profil de provisionnement {#regenerating-your-provisioning-profile} - #### Utilisateurs encore « push registered » après l'envoi d'une notification push {#users-still-push-registered-after-sending-a-push-notification} - ##### Application au premier plan {#app-is-foregrounded} - ##### Notification de test planifiée de manière incorrecte {#test-notification-scheduled-incorrectly} - #### L'utilisateur n'est pas « push registered » pour l'application testée {#user-not-push-registered-for-the-app-being-tested} - ## Les messages push ne sont pas envoyés {#push-messages-not-sending} - ## Erreurs du journal d'activité des messages {#message-activity-log-errors} - #### Réception d'un envoi non enregistré au jeton de notification push {#received-unregistered-sending} - #### Jeton d'appareil non destiné à la rubrique {#device-token-not-for-topic} - #### BadDeviceToken lors de l'envoi au jeton de notification push {#baddevicetoken-sending-to-push-token} - ## Problèmes après la réception de la notification push {#issues-after-push-delivery} - #### Les clics sur les notifications push ne sont pas enregistrés {#push-clicks-not-logged} - #### Les liens web issus des clics sur les notifications push ne s'ouvrent pas {#web-links-from-push-clicks-not-opening} - #### Les liens profonds issus des clics sur les notifications push ne s'ouvrent pas {#deep-links-from-push-clicks-not-opening} - #### Peu ou pas d'ouvertures directes {#few-or-no-direct-opens} - [Aperçu des messages in-app pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/in-app_messaging/overview/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Messages in-app {#in-app-messages} - ## Types de messages in-app {#in-app-message-types} - ### Comportements attendus par types de messages {#expected-behaviors-by-message-types} - [Personnalisation des messages in-app iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/in-app_messaging/customization/index.md):

- [Définir les délégués de messages in-app pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/in-app_messaging/customization/setting_delegates/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Définir les délégués - ## Délégué de message in-app - ## Délégué principal de message in-app - ## Déclarations de méthode - ## Exemples d’implémentation - [Personnaliser l'orientation des messages in-app pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/in-app_messaging/customization/customizing_orientation/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Personnaliser l'orientation - ## Définir l’orientation pour tous les messages in-app - ## Définition de l’orientation par message in-app - ## Déclarations de méthode - [Personnaliser la gestion de l'affichage des messages in-app pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/in-app_messaging/customization/handling_in_app_display/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Gestion personnalisée de l'affichage des messages in-app {#custom-handling-in-app-message-display} - ## Remplacer les messages in-app avant l'affichage {#overriding-in-app-messages-before-display} - ## Désactivation du mode sombre {#disabling-dark-mode} - ## Masquer la barre d'état pendant l'affichage {#hiding-the-status-bar-during-display} - ## Enregistrement des impressions et des clics {#logging-impressions-and-clicks} - ## Déclarations de méthode {#method-declarations} - ## Exemples d'implémentation {#implementation-samples} - [Personnaliser le comportement des messages in-app sur clic pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/in-app_messaging/customization/behavior_on_click/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Personnaliser le comportement des messages in-app au clic {#customize-in-app-message-behavior-on-click} - ## Personnaliser les clics sur le corps du message in-app {#customizing-in-app-message-body-clicks} - ## Personnaliser les clics sur les boutons du message in-app {#customizing-in-app-message-button-clicks} - ## Déclarations de méthode {#method-declarations} - [Personnaliser le déclenchement des messages in-app pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/in-app_messaging/customization/custom_triggering/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Déclenchement personnalisé de messages in-app - ## Étape 1 : Gérer les paires clé-valeur et les notifications push silencieuses - ## Étape 2 : Créer une campagne de notification push - ## Étape 3 : Créer une campagne de communication in-app - [Message in-app dans un contrôleur de visualisation personnalisée pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/in-app_messaging/customization/custom_view_controller/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Afficher les messages in-app dans un contrôleur de visualisation personnalisée - ## Déclarations de méthode - ## Exemples d’implémentation - [Rejet de message in-app modal pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/in-app_messaging/customization/modal_dismissal/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Rejet modal par toucher extérieur {#dismiss-modal-on-outside-tap} - [Paires clé-valeur de message in-app pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/in-app_messaging/customization/key_value_pairs/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Compléments de paires clé-valeur - [Livraison de messages in-app pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/in-app_messaging/in-app_message_delivery/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Livraison de messages in-app - ## Types de déclencheurs - ## Sémantiques de livraison - ## Intervalle de temps minimum entre les déclencheurs - ## Absence de déclencheur correspondant - ## Livraison locale de messages in-app - ### La pile de messages in-app - #### Affichage des messages in-app - #### Ajout de messages in-app à la pile - #### Retour des messages in-app à la pile - #### Écarter les messages in-app - #### Mettre manuellement en file d’attente l’affichage des messages in-app - ### Création et affichage de messages in-app en temps réel - [Invite d'évaluation personnalisée sur l'App Store](/docs/fr/developer_guide/platforms/legacy_sdks/ios/in-app_messaging/custom_app_store_review_prompt/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Invite d'évaluation personnalisée sur l'App Store {#custom-app-store-review-prompt} - [Guide d’implémentation des messages in-app pour iOS (facultatif)](/docs/fr/developer_guide/platforms/legacy_sdks/ios/in-app_messaging/implementation_guide/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Guide d’implémentation de la messagerie in-app - ## Considérations du code - ### Sous-classes ABKinAppMessage - ## Cas d’utilisation - ### Message in-app personnalisé à glissement vers le haut - #### Ajouter un comportement supplémentaire à notre interface utilisateur par défaut

- ### Message in-app modal personnalisé - #### Configuration du tableau de bord - ### Message in-app complet personnalisé - #### Configuration du tableau de bord - #### Interception des touches de message in-app - [Guide d'implémentation des messages in-app SharePlay](/docs/fr/developer_guide/platforms/legacy_sdks/ios/in-app_messaging/implementation_guide/shareplay/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Guide d'implémentation des messages in-app SharePlay {#shareplay-in-app-message-implementation-guide} - ## Aperçu {#overview} - ## Intégration {#integration} - ### Étape 1 : Remplacer et charger le XIB {#step-1-overriding-and-loading-xib} - ### Étape 2 : Configurer AVPlayer pour les messages in-app {#step-2-configure-avplayer-for-in-app-messages} - #### Configuration du tableau de bord {#dashboard-configuration} - ### Étape 3 : Créer une activité de visionnage en groupe {#step-3-create-group-watching-activity} - #### Préparer la lecture {#prepare-to-play} - ### Étape 4 : Lancer le message in-app depuis l'API SharePlay {#step-4-launch-in-app-message-from-shareplay-api} - ### Étape 5 : Quitter une session de groupe lors de la fermeture du message in-app {#step-5-leaving-a-group-session-on-in-app-message-dismissal} - ### Configurer la visibilité du bouton SharePlay {#configure-shareplay-button-visibility} - [Résolution des problèmes de messagerie in-app pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/in-app_messaging/troubleshooting/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Résolution des problèmes des messages in-app {#troubleshoot-in-app-messages} - ## Impressions - #### Les impressions ou les analyses de clics ne sont pas enregistrées {#impression-or-click-analytics-arent-being-logged} - #### Les impressions sont inférieures à la valeur attendue {#impressions-are-lower-than-expected} - ## Le message in-app attendu ne s'est pas affiché {#expected-in-app-message-did-not-display} - ### Distribution des messages in-app {#troubleshooting-in-app-message-delivery} - #### Vérifier si les messages sont demandés et renvoyés {#check-if-messages-are-requested-and-returned} - #### Résoudre les problèmes de messages non demandés {#troubleshoot-messages-not-being-requested} - ### Résoudre les problèmes de messages non renvoyés {#troubleshoot-messages-not-being-returned} - ### Affichage des messages in-app {#troubleshooting-in-app-message-display} - [Intégration du contrôleur de vue Content Cards pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/content_cards/integration/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Intégration des Content Cards {#content-card-integration} - ## Modèle de données des Content Cards {#content-cards-data-model} - ### Obtenir les données {#getting-the-data} - ## Modèle de carte de contenu {#content-card-model} - ### Propriétés du modèle de carte de contenu de base — ABKContentCard {#base-content-card-model-properties-abkcontentcard} - ### Propriétés de la carte de contenu de type bannière — ABKBannerContentCard {#banner-content-card-properties-abkbannercontentcard} - ### Propriétés de la carte de contenu avec image légendée — ABKCaptionedImageCard {#captioned-image-content-card-properties-abkcaptionedimagecard} - ### Propriétés de la carte de contenu classique — ABKClassicContentCard {#classic-content-card-properties-abkclassiccontentcard} - ## Méthodes de carte {#card-methods} - ## Intégration du contrôleur de vue des Content Cards {#content-cards-view-controller-integration} - ### Contexte de navigation {#navigation-context} - ### Contexte modal {#modal-context} - [Personnalisation de carte de contenu iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/content_cards/customization/index.md):

- [Style de carte de contenu personnalisé pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/content_cards/customization/custom_styling/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Style personnalisé - ## Remplacer les images par défaut - ## Désactivation du mode sombre - [Personnalisation du flux de cartes de contenu pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/content_cards/customization/customizing_feed/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Personnaliser le flux des cartes de contenu - ## Personnalisation de l’interface utilisateur - ### Interface utilisateur dynamique - ### Interface utilisateur statique - ## Fournir des interfaces personnalisées - ## Remplacer des cartes de contenu remplies - [Gérer manuellement les clics sur les cartes de contenu pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/content_cards/customization/handling_clicks_manually/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Gérer les clics manuellement - [Indicateurs de messages non lus et lus de carte de contenu pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/content_cards/customization/read_unread_indicators/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Indicateurs de messages non lus et lus - ## Désactivation de l'indicateur de messages non lus - ## Personnalisation de l'indicateur de messages non lus - [Badges de carte de contenu pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/content_cards/customization/badges/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Badges - ## Demander le décompte des cartes de contenu non lues - ## Affichage du nombre de cartes de contenu non consultées sur le nombre de badges d’application - [Vue Carrousel de carte de contenu pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/content_cards/customization/use_cases/carousel_view/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Cas d’utilisation : Vue carrousel - ## Mise en œuvre - ### Étape 1 : Créer un contrôleur de visualisation personnalisé - ### Étape 2 : Mettre en œuvre les analyses - ### Étape 3 : Créer un observateur de carte de contenu - ## Considérations - [Veuillez actualiser le flux de la carte de contenu pour iOS.](/docs/fr/developer_guide/platforms/legacy_sdks/ios/content_cards/refreshing_the_feed/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Veuillez actualiser le flux. - ## Rafraîchir les cartes de contenu - [Utilisation de plusieurs flux de cartes de contenu pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/content_cards/multiple_feeds/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Utilisation de plusieurs flux de carte de contenu - ## Étape 1 : Définir des paires clé-valeur sur les cartes - ## Étape 2 : Configurer un auditeur de carte de contenu - [Guide d'implémentation des Content Cards pour iOS (facultatif)](/docs/fr/developer_guide/platforms/legacy_sdks/ios/content_cards/implementation_guide/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Guide d'implémentation des Content Cards {#content-card-implementation-guide} - ## Considérations du code {#code-considerations} - ### Les Content Cards comme objets personnalisés {#content-cards-as-custom-objects} - ## Cas d'utilisation {#sample-use-cases} - ### Content Cards en tant que contenu supplémentaire {#content-cards-as-supplemental-content} - #### Configuration du tableau de bord {#dashboard-configuration} - ##### Prêt à enregistrer les analyses ? {#ready-to-log-analytics} - ### Content Cards dans un centre de messages {#content-cards-in-a-message-center} - #### Configuration du tableau de bord {#dashboard-configuration} - #### Explication supplémentaire {#further-explanation} - ##### Prêt à enregistrer les analyses ? {#ready-to-log-analytics} - ### Content Cards interactives {#interactive-content-cards} - #### Configuration du tableau de bord {#dashboard-configuration} - ##### Prêt à enregistrer les analyses ? {#ready-to-log-analytics} - ## Personnalisation du mode sombre {#dark-mode-customization} - ## Enregistrer les impressions, les clics et les rejets {#logging-impressions-clicks-and-dismissals} - #### Composants d'implémentation

{#implementation-components} - ## Fichiers d'aide {#helper-files} - [Sessions de suivi pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/analytics/tracking_sessions/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Suivre une session pour iOS - ## Cycle de vie de la session - ## Personnaliser la libération sur temporisation de session - ## Tester le suivi de session - [Définir les ID d’utilisateur pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/analytics/setting_user_ids/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Définir les ID d’utilisateur pour iOS - ## Convention de dénomination des ID utilisateurs suggérée - ## Attribuer un ID utilisateur - ## Meilleures pratiques et remarques sur l’intégration de l’ID utilisateur - ### Automatic preservation of anonymous user history - ### Additional notes and best practices - ## Alias d’utilisateurs - [Suivi des événements personnalisés pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/analytics/tracking_custom_events/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Suivre les événements personnalisés pour iOS {#track-custom-events-for-ios} - ## Ajouter un événement personnalisé {#adding-a-custom-event} - ### Ajouter des propriétés {#adding-properties} - ### Clés réservées {#event-reserved-keys} - ## Ressources complémentaires {#additional-resources} - [Définir des attributs personnalisés pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/analytics/setting_custom_attributes/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Définir des attributs personnalisés pour iOS {#set-custom-attributes-for-ios} - ## Affecter des attributs utilisateur par défaut {#assigning-default-user-attributes} - ## Affecter des attributs utilisateur personnalisés {#assigning-custom-user-attributes} - ### Attribut personnalisé avec une valeur de chaîne de caractères {#custom-attribute-with-a-string-value} - ### Attribut personnalisé avec une valeur entière {#custom-attribute-with-an-integer-value} - ### Attribut personnalisé avec une valeur double {#custom-attribute-with-a-double-value} - ### Attribut personnalisé avec une valeur booléenne {#custom-attribute-with-a-boolean-value} - ### Attribut personnalisé avec une valeur de date {#custom-attribute-with-a-date-value} - ### Attribut personnalisé avec une valeur de tableau {#custom-attribute-with-an-array-value} - ### Réinitialiser un attribut personnalisé {#unsetting-a-custom-attribute} - ### Incrémenter ou décrémenter des attributs personnalisés {#incrementingdecrementing-custom-attributes} - ### Définir un attribut personnalisé via la REST API {#setting-a-custom-attribute-via-the-rest-api} - ### Limites de valeur des attributs personnalisés {#custom-attribute-value-limits} - #### Informations supplémentaires {#additional-information} - ## Configuration des abonnements utilisateur {#setting-up-user-subscriptions} - ### Définir les abonnements par e-mail {#setting-email-subscriptions} - ### Définir les abonnements aux notifications push {#setting-push-notification-subscriptions} - [Enregistrer les achats pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/analytics/logging_purchases/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Enregistrer les achats pour iOS {#log-purchases-for-ios} - ## Suivi des achats et des chiffres d'affaires {#tracking-purchases-and-revenue} - ### Ajouter des propriétés {#properties-purchases} - ### Ajout d'une quantité {#adding-quantity} - ### Enregistrer les achats au niveau de la commande {#log-purchases-at-the-order-level} - ### Clés réservées {#reserved-keys} - ### REST API - [Suivi de la localisation pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/analytics/location_tracking/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Suivi de la localisation pour iOS - ## Activer le suivi automatique de la localisation - ### Transfert des données de localisation vers Braze - [Suivi des désinstallations pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/analytics/uninstall_tracking/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Suivi des désinstallations pour iOS {#uninstall-tracking-for-ios} - ## Étape 1 : Activer les notifications push en arrière-plan {#step-1-enabling-background-push} - ## Étape 2 : Vérifier les notifications push en arrière-plan de Braze {#step-2-checking-for-braze-background-push} - ## Étape 3 : Tester depuis le tableau de bord {#step-3-test-from-the-dashboard} - ## Étape 4 : Activer le suivi des désinstallations {#step-4-enable-uninstall-tracking} - [Désactiver le suivi SDK pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/analytics/disabling_tracking/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Désactiver la collecte de données pour iOS - ## SDK iOS v5.7.0 et ultérieurs - [Création de liens profonds pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/advanced_use_cases/linking/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Création de liens profonds pour iOS {#deep-linking-for-ios} - ## Étape 1 : Enregistrer un schéma {#step-1-register-a-scheme} - ## Étape 2 : Ajouter le schéma personnalisé à la liste autorisée (iOS 9+) {#step-2-allowlist-the-custom-scheme-ios-9} - ## Étape 3 : Implémenter un gestionnaire {#step-3-implement-a-handler} - # Liens universels {#universal-links} - ## App Transport Security (ATS) - ### Prérequis ATS {#ats-requirements} - ### Gestion des exigences ATS {#handling-ats-requirements} - #### Confirmer que tous les liens sont conformes à l'ATS (recommandé) {#confirm-all-links-are-ats-compliant-recommended} - #### Désactiver partiellement l'ATS {#partially-disable-ats} - #### Désactiver complètement l'ATS {#disable-ats-entirely} - ## Encodage d'URL {#url-encoding} - ## Personnalisation {#linking-customization} - ### Personnalisation de la WebView par défaut {#default-webview-customization} - ### Personnalisation de la gestion des liens {#linking-handling-customization} - #### Exemple d'intégration : ABKURLDelegate {#integration-example-abkurldelegate} - ## Cas d'utilisation fréquents {#frequent-use-cases} - ### Création de liens profonds vers les paramètres d'application {#deep-linking-to-app-settings} - [Contrôle fin du trafic réseau pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/advanced_use_cases/fine_network_traffic_control/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Contrôle fin du trafic réseau - ## Demander des politiques de traitement - ### Traitement automatique des demandes - ### Traitement manuel des demandes - ## Définition de la politique de traitement des demandes - ### Définir la politique de demande au démarrage - ### Définir la politique de demande au moment de l’exécution - ## Arrêt manuel de la communication serveur à la volée - [Localisation pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/advanced_use_cases/localization/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Localisation {#localization} - ## Langues prises en charge {#languages-supported} - [Intégration de balise pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/advanced_use_cases/beacon_integration/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Intégration de balise {#beacon-integration} - ## Balises Infillion {#infillion-beacons} - [Localisations et géorepérages pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/advanced_use_cases/locations_and_geofences/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Fonctions de localisation et de géorepérage - ## Étape 1 : Activer les notifications push en arrière-plan - ## Étape 2 : Activer les géorepérages - ## Étape 3 : Vérifier les notifications push en arrière-plan de Braze - ## Étape 4 : Ajouter NSLocationAlwaysUsageDescription à votre Info.plist - ## Étape 5 : Demander l'autorisation de l'utilisateur - ## Étape 6 : Activer les géorepérages sur le tableau de bord - ### Activer les géorepérages depuis la page des localisations : - ### Activer les géorepérages depuis la page des paramètres : - ## Désactiver les requêtes de géorepérage automatiques - ## Demander manuellement des géorepérages - [Google Tag Manager pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/advanced_use_cases/google_tag_manager/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Google Tag Manager pour iOS - ## Initialisation du SDK {#initializing-ios-google-tag-provider} - ## Configuration de votre Google Tag Manager {#configuring-ios-google-tag-manager} - ### Événements personnalisés - ### Enregistrer des attributs personnalisés - ### Appeler changeUser - ## Fournisseur de balises personnalisées du Braze SDK {#adding-ios-google-tag-provider} - [Stockage pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/storage/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Stockage {#storage} - ## Propriétés de l'appareil {#device-properties} - [Exemples d'applications pour iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/sample_apps/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Exemples d'applications {#sample-apps} - ## Créer les applications de test {#building-test-applications} - [Journal des modifications pour SDK iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/changelog/swift_changelog/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Journal des modifications SDK iOS - [Journal des modifications pour SDK Objective-C iOS](/docs/fr/developer_guide/platforms/legacy_sdks/ios/changelog/objc_changelog/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Journal des modifications SDK Objective-C iOS - # macOS - [Configuration initiale du SDK pour macOS](/docs/fr/developer_guide/platforms/legacy_sdks/macOS/initial_sdk_setup/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Configuration initiale du SDK {#initial-sdk-setup} - ## Fonctionnalités prises en charge {#supported-features} - [Configuration initiale du SDK pour tvOS](/docs/fr/developer_guide/platforms/legacy_sdks/tvos/initial_sdk_setup/index.md): AppboyKit (also known as the Objective-C SDK) is no longer supported and has been replaced by the Swift SDK. It will no longer receive new features, bug fixes, security updates, or technical support—however, messaging and analytics will continue to function as normal. To learn more, see Introducing the New Braze Swift SDK. - # Configuration initiale du SDK {#initial-sdk-setup} - ## Intégration CocoaPods du SDK tvOS {#tvos-sdk-cocoapods-integration} - ### Étape 1 : Installer CocoaPods {#step-1-install-cocoapods} - ### Étape 2 : Construction du Podfile {#step-2-constructing-the-podfile} - ### Étape 3 : Installer le SDK Braze {#step-3-installing-the-braze-sdk} - ### Étape 4 : Mettre à jour la délégation de votre application {#step-4-updating-your-app-delegate} - ### Étape 5 : Spécifier votre endpoint ou cluster de données personnalisé {#step-5-specify-your-custom-endpoint-or-data-cluster} - #### Configuration de l'endpoint à la compilation (recommandée) {#compile-time-endpoint-configuration-recommended} - #### Configuration de l'endpoint à l'exécution {#runtime-endpoint-configuration} - ### Intégration SDK terminée {#sdk-integration-complete} - ### Mettre à jour le SDK Braze via CocoaPods {#updating-the-braze-sdk-via-cocoapods} - ## Personnaliser Braze au démarrage {#customizing-braze-on-startup} - ## Appboy.sharedInstance() et la nullabilité Swift {#appboysharedinstance-and-swift-nullability} - ## Options d'intégration manuelle {#manual-integration-options} - ## Identification des utilisateurs et rapports d'analyse {#identifying-users-and-reporting-analytics} - [À propos des bannières](/docs/fr/developer_guide/banners/index.md): Banners availability depends on your Braze package. Contact your account manager or customer success manager to get started. - # Banners - ## Prerequisites - ## Why use Banners? - ## Features - ## About Banners {#about-banners} - ### Placement IDs {#placement-id} - ### Banner priority {#priority} - ### Placement requests {#requests} - #### Rate limiting for refresh requests - ### Message delivery - ### Dimensions and sizing - ## Limitations - ## Next steps - [Gérer les emplacements de bannières pour le SDK Braze](/docs/fr/developer_guide/banners/placements/index.md): When you create placements in your app or website, your app sends a request to Braze to fetch Banner messages for each placement. - # Gérer les emplacements de bannières {#manage-banner-placements} - ## À propos des demandes de placement {#requests} - #### Rate limiting for refresh requests - ## Créer un placement {#create-a-placement} - ### Conditions préalables {#prerequisites} - ### Step 1: Create placements in Braze - ### Étape 2 : Actualiser les placements dans votre application {#requestBannersRefresh} - ### Étape 3 : Écouter les mises à jour {#subscribeToBannersUpdates} - ### Étape 4 : Insérer à l'aide de l'ID de placement {#insertBanner} - ### Étape 5 : Envoyer une bannière de test (facultatif) {#handling-test-cards} - ## Enregistrer les impressions {#log-impressions} - ## Enregistrer les clics {#logging-clicks} - ### Contenu standard de la bannière (automatique) {#standard-banner-content-automatic} - ### Blocs de code personnalisés {#custom-code-blocks} - ### Implémentations d'interface utilisateur personnalisées (headless) {#custom-ui-implementations-headless} - #### Enregistrer les impressions {#logging-impressions} - #### Enregistrer les clics - ## Enregistrer les fermetures {#log-dismissals} - ### Conditions préalables - ### Intégrations {#integrations} - #### Intégrations de bannières standard (éditeur par glisser-déposer) {#standard-banner-integrations-drag-and-drop-editor} - #### Blocs de code personnalisés - ### Enregistrer des analyses personnalisées lors de la fermeture d'une bannière {#log-custom-analytics-on-banner-dismissal} - ### Limite de stockage des fermetures en attente {#pending-dismissal-storage-cap} - ## Dimensions et taille {#dimensions-and-sizing} - ## Propriétés personnalisées {#custom-properties} - ### Conditions préalables - ### Accéder aux propriétés personnalisées {#access-custom-properties} - [Bannières de test](/docs/fr/developer_guide/banners/testing/index.md): Avant de pouvoir tester les messages de bannière dans Braze, vous devez créer une Campaign de bannière dans Braze. Vérifiez également que l'emplacement que vous souhaitez tester est déjà intégré dans votre application ou votre site web. - # Bannières de test {#test-banners} - ## Conditions préalables {#prerequisites} - ## Tester une bannière {#test-a-banner} - [Analyse des bannières](/docs/fr/developer_guide/banners/analytics/index.md): Once you've launched your campaign, you can return to the details page for that campaign to view key metrics. Navigate to the Campaigns page and select your campaign to open the details page. For sent in Canvas, refer to Canvas analytics. - # Analyse des bannières - ## Viewing analytics - ### Time range - ### Campaign details - #### Estimated Audience and Current Audience - #### Changes Since Last Viewed - ### Message Performance - ### Historical performance - ### Conversion event details - ### Conversion correlation - ## Retention report - ## Funnel report - [Migration des Content Cards vers les bannières](/docs/fr/developer_guide/banners/migrating_from_content_cards/index.md): Les bannières présentent plusieurs avantages par rapport aux Content Cards pour l'envoi de messages de type bannière : - # Migration des Content Cards vers les bannières {#migrate-from-content-cards-to-banners} - ## Pourquoi migrer vers les bannières ? {#why-migrate-to-banners} - ### Production accélérée {#accelerated-production} - ### Une meilleure expérience utilisateur {#better-ux} - ### Persistance {#persistence} - ## Quand migrer {#when-to-migrate} - ## Quand conserver les Content Cards {#when-to-keep-content-cards} - ## Guide de migration {#migration-guide} - ### Conditions préalables {#prerequisites} - ### S'abonner aux mises à jour {#subscribe-to-updates} - #### Approche par Content Cards {#content-cards-approach} - #### Approche par bannières {#banners-approach} - ### Afficher le contenu {#display-content} - #### Approche par Content Cards - #### Approche par bannières - ### Journalisation des analyses (implémentations personnalisées) {#log-analytics-custom-implementations} - #### Approche par Content Cards - #### Approche par bannières - ### Récupération des propriétés {#getting-properties} - #### Approche par Content Cards - #### Approche par bannières - ### Gestion des groupes de contrôle {#handling-control-groups} - #### Approche par Content Cards - #### Approche par bannières - ## Limitations {#limitations} - ### Migration des messages déclenchés {#migrating-triggered-messages} - ### Différences de fonctionnalités {#feature-differences} - ### Limites du produit {#product-limitations} - ### Limitations du SDK {#sdk-limitations} - ## Articles connexes {#related-articles} - [Tutoriel : Affichage d'une bannière par ID de placement](/docs/fr/developer_guide/banners/tutorial_displaying_banners/index.md): Before you can start this tutorial, verify that your Braze SDK meets the minimum version requirements: - # Tutoriel : Affichage d'une bannière par ID de placement - ## Prerequisites - ## Displaying banners for the Web SDK - #### 1. Enable debugging (optional) - #### 2. Subscribe to Banner updates - #### 3. Insert the Banner and handle control groups - #### 4. Refresh your Banners - #### 5. Add a container for your Banner - ## Prerequisites - ## Displaying banners for the Android SDK - #### 1. Enable debugging (optional) - #### 2. Subscribe to Banner updates - #### 3. Refresh your placements - #### 4. Define BannerView in your banners.xml - ## Prerequisites - ## Displaying banners for the Swift SDK - #### 1. Enable debugging (optional) - #### 2. Refresh your placements - #### 3. Initialize the Banner and provide a callback - #### 4. Enable Auto Layout constraints - #### 5. Anchor content and set height constraints - #### 1. Enable debugging (optional) - #### 2. Refresh your placements - #### 3. Create a view component - #### 4. Only display available Banners - #### 5. Only show BannerView after it loads - #### 6. Dynamically update Banner height - #### 7. Limit the Banner height - [Bannières : Foire aux questions](/docs/fr/developer_guide/banners/faq/index.md): Banners are refreshed with their latest data whenever you call the refresh method—there's no need to resend or update your Banner campaign. - # Frequently asked questions - ## When do Banner updates appear for users? - ## How many placements can I request in a session? - ## How many Banner campaigns can be active simultaneously? - ## For campaigns sharing a placement, which Banner is displayed first? - ## Can I use Banners in my existing Content Card feed? - ## Can Banners include video? - ## Can I trigger a banner based on user actions? - ## Can users dismiss a Banner? - ## Can I export Banners campaign analytics using the Braze API? - ## When are users segmented? - ## How can I compose Banners to ensure the lowest latency? - ## Are all Liquid tags supported? - ## Can I capture click events? - [Cartes de contenu dans le SDK de Braze](/docs/fr/developer_guide/content_cards/index.md): Using Content Cards for banner-style messages? Try out Banners— perfect for inline, persistent in-app and web messages. - # Cartes de contenu - ## Prerequisites - ## Standard feed UI - ## Testing Content Cards on the web - ## Card types and properties - ### Base card model - ### Image only - ### Captioned image - ### Classic - ## Control group - ## Card methods - ### Default feed methods - ### Custom feed methods - ## Best practices - ### Call methods in the correct order - ### Use cached cards to persist content across page loads - ### Log analytics for custom feeds - ## Using Google Tag Manager - ### Setting up Content Cards - ### Upgrading templates {#upgrading} - ### Troubleshooting {#troubleshooting} - #### Enable tag debugging {#debugging} - #### Enter debug mode - #### Verify tag sequencing for custom events {#tag-sequencing} - #### Enable verbose logging - ## Prerequisites - ## Google fragments - ## Card types and properties - ### Base card model {#base-card-for-android} - ### Image only {#banner-image-card-for-android} - ### Captioned image {#captioned-image-card-for-android} - ### Classic {#text-Announcement-card-for-android} - ## Card methods - ## Prerequisites - ## View controller contexts - ### Navigation - ### Modal - ## Base card model - ## Card methods - ## Prerequisites - ## Card Feeds - ## Content Cards - ## About Flutter Content Cards - ## Prerequisites - ## Card methods - ## Receiving Content Card data - ### Listen for Content Card data in the Dart layer - ### Forward Content Card data from the native iOS layer - #### Replaying the callback for Content Cards - ## About React Native Content Cards - ## Prerequisites - ## Cards methods - ## Card types and properties - ### Base card model - ### Image only - ### Captioned image - ### Classic - ### Control - ## Prerequisites - ## Setting up your tvOS app - ### Step 1: Create a new iOS app - ### Step 2: Get your app's API key - ### Step 3: Integrate BrazeKit - ### Step 4: Create your custom UI - ## Prerequisites - ## Displaying Content Cards natively {#unity-content-cards-native-ui} - ## Receiving Content Card data in Unity - ## Parsing Content Cards - ##### Example Content Cards callback - ## Refreshing Content Cards - ## Analytics - ## About .NET MAUI Content Cards - ## Prerequisites - ## Card types and properties - ### Base card model - ### Banner - ### Captioned image - ### Classic - ## Card methods - [Créer des Content Cards](/docs/fr/developer_guide/content_cards/creating_cards/index.md): Using Content Cards for banner-style messages? Try out Banners— perfect for inline, persistent in-app and web messages. - # Créer des Content Cards {#create-content-cards} - ## Création d'une carte {#creating-a-card} - ### Étape 1 : Créer une IU personnalisée {#step-1-create-a-custom-ui} - ### Étape 2 : S'abonner aux mises à jour des cartes {#step-2-subscribe-to-card-updates} - #### Étape 2a : Créer une variable d'abonné privée {#step-2a-create-a-private-subscriber-variable} - #### Étape 2b : S'abonner aux mises à jour {#step-2b-subscribe-to-updates} - #### Étape 2c : Se désabonner {#step-2c-unsubscribe} - #### Étape 2a : Créer une variable d'abonné privée - #### Étape 2b : S'abonner aux mises à jour - #### Étape 2c : Se désabonner - ##### Cancellable {#cancellable} - ##### AsyncStream - ### Étape 3 : Mettre en œuvre les analyses {#step-3-implement-analytics} - ### Étape 4 : Tester votre carte (facultatif) {#step-4-test-your-card-optional} - ## Placements des Content Cards {#content-card-placements} - ### Boîte de réception de messages {#message-inbox} - #### Exemple {#example} - ### Carrousel {#carousel} - ### Image seule {#image-only} - [Personnaliser les cartes](/docs/fr/developer_guide/content_cards/customizing_cards/index.md): Using Content Cards for banner-style messages? Try out Banners— perfect for inline, persistent in-app and web messages. - [Personnaliser le style des Content Cards](/docs/fr/developer_guide/content_cards/customizing_cards/style/index.md): L'interface utilisateur par défaut des Content Cards est importée depuis la couche UI du SDK Braze. Vous pouvez ensuite ajuster certains aspects du style des cartes, l'ordre d'affichage et la manière dont le flux est présenté à vos utilisateurs. - # Personnaliser le style des Content Cards {#customize-the-style-of-content-cards} - ## Créer un style personnalisé {#creating-a-custom-style} - ## Exemples de personnalisation {#customization-examples} - ### Police personnalisée {#custom-font} - ### Icônes d'épingle personnalisées {#custom-pinned-icons} - ### Modifier la couleur de l'indicateur de non-lecture {#changing-the-unread-indicator-color} - ### Mode sombre {#dark-mode} - ### Désactiver l'indicateur de non-lecture {#disabling-unread-indicator} - [Personnaliser le comportement des Content Cards](/docs/fr/developer_guide/content_cards/customizing_cards/behavior/index.md): Braze vous permet d'envoyer des payloads de données supplémentaires via les Content Cards aux appareils des utilisateurs à l'aide de paires clé-valeur. Celles-ci peuvent vous aider à suivre les indicateurs internes, à mettre à jour le contenu de l'application et à personnaliser les propriétés. Ajoutez des paires clé-valeur à l'aide du tableau de bord. - # Personnaliser le comportement des Content Cards {#customize-the-behavior-of-content-cards} - ## Paires clé-valeur {#key-value-pairs} - ## Content Cards en tant que contenu supplémentaire {#content-cards-as-supplemental-content} - ### Paires clé-valeur déclenchées par l'API {#api-triggered-key-value-pairs} - ## Content Cards en tant que contenu interactif {#content-cards-as-interactive-content} - ## Badges de Content Cards {#content-card-badges} - ### Affichage du nombre de Content Cards non lues sous forme de badge {#displaying-the-number-of-unread-content-cards-as-a-badge} - [Personnaliser le flux pour les Content Cards](/docs/fr/developer_guide/content_cards/customizing_cards/feed/index.md): A session refers to the period of time the Braze SDK tracks user activity in your app after it's launched. You can also force a new session by calling the changeUser() method. - # Personnaliser le flux pour les Content Cards {#customize-the-feed-for-content-cards} - ## About the session lifecycle - ## Actualiser le flux {#refreshing-the-feed} - ### Actualisation automatique {#automatic-refresh} - ### Actualisation manuelle {#manual-refresh} - #### Gestionnaire d'achèvement {#completion-handler} - #### Async/Await - ### Synchronisation complète vs synchronisation partielle {#full-sync-vs-partial-sync} - ### Limite de débit {#rate-limit} - ## Personnaliser l'ordre d'affichage des cartes {#customizing-displayed-card-order} - ## Personnaliser le message « flux vide » {#customizing-empty-feed-message} - ## Implémenter plusieurs flux {#implementing-multiple-feeds} - ### Étape 1 : Définir des paires clé-valeur sur les cartes {#step-1-set-key-value-pairs-on-cards} - ### Étape 2 : Filtrer les Content Cards {#step-2-filter-content-cards} - #### Étape 2.1 : Créer un gestionnaire personnalisé {#step-21-create-a-custom-handler} - #### Étape 2.2 : L'ajouter à un fragment {#step-22-add-it-to-a-fragment} - [Enregistrer les analyses](/docs/fr/developer_guide/content_cards/logging_analytics/index.md): When implementing your custom Content Cards, you can parse the Content Card objects and extract their payload data such as title, cardDescription, and imageUrl. Then, you can use the resulting model data to populate your custom UI. - # Enregistrer les analyses {#log-analytics} - ## Logging analytics - ### Step 1: Create a private subscriber variable - ### Step 2: Subscribe to updates - ### Step 3: Unsubscribe - ### Step 1: Create a private subscriber variable - ### Step 2: Subscribe to updates - ### Step 3: Unsubscribe - ### Cancellable - ### AsyncStream - ## Logging events - ## Handling on-click behavior - ## Fermetures uniques supérieures aux impressions uniques {#unique-dismissals-higher-than-unique-impressions} - ## Analyses manquantes pour les Content Cards {#missing-content-cards-analytics} - ## ID de Content Card {#content-card-id} - [Création de liens profonds dans les Content Cards](/docs/fr/developer_guide/content_cards/deep_linking/index.md): Pour l'instant, les liens profonds des Content Cards ne sont pas pris en charge par le SDK Web de Braze. - # Création de liens profonds dans les Content Cards {#deep-linking-in-content-cards} - ## Prerequisites - ## Creating a universal delegate - ## Deep linking to app settings - ## Customizing WebView activity {#CustomWebviewActivity} - ## Troubleshooting - ## Using Jetpack Compose - ## Prerequisites - ## Handling deep links - ### Step 1: Register a scheme {#register-a-scheme} - ### Step 2: Add a scheme allowlist - ### Step 3: Implement a handler - ## App Transport Security (ATS) - ### Working with ATS - ## Decoding URLs - ## Deep linking to app settings - ## Customization options {#customization-options} - ### Default WebView customization - ### Linking handling customization - #### Universal links {#universal-links} - ## Examples - ### BrazeDelegate - [Intégrer des GIF dans les cartes de contenu](/docs/fr/developer_guide/content_cards/embedding_gifs/index.md): Pour les SDK wrapper non répertoriés, utilisez plutôt la méthode native Android ou Swift correspondante. Gardez à l'esprit que les SDK Android et Swift Braze ne prennent pas en charge les GIF animés de manière native, vous mettrez donc en œuvre les GIF de la carte de contenu à l'aide d'outils tiers à la place. - # Intégrer des GIF dans les cartes de contenu - ## About GIFs - ## Integrating a custom image library - ### Step 1: Creating the image loader delegate - ### Fixing image loading for Android SDK 36.0.0 and later - ### Step 2: Setting the image loader delegate - ## Custom Image Loading with Jetpack Compose - ## Prerequisites - ## Integrating a custom image library - ### Step 1: Integrate SDWebImage - ### Step 2: Create a new Swift file - ### Step 3: Add GIFViewProvider - ### Step 4: Modify your AppDelegate.swift - [Tutoriel : Création d'une boîte de réception avec des cartes de contenu](/docs/fr/developer_guide/content_cards/content_card_inbox/index.md): Before you can use this feature, you'll need to integrate the Android Braze SDK. - # Tutoriel : Création d'une boîte de réception avec des cartes de contenu - ## Prerequisites - ## Création d'une boîte de réception avec des cartes de contenu pour Android (Compose) - #### 1\. Activer le débogage (facultatif) - #### 2\. Créer une vue d'interface utilisateur - #### 3\. Veuillez vous abonner aux mises à jour de la carte de contenu. - #### 4\. Créer une interface utilisateur personnalisée pour la boîte de réception - #### 5\. Suivre les impressions et les clics - ## Création d'une boîte de réception avec des cartes de contenu pour Android (RecyclerView) - #### 1\. Activer le débogage (facultatif) - #### 2\. Créer une vue d'interface utilisateur - #### 3\. Veuillez vous abonner aux mises à jour de la carte de contenu. - #### 4\. Créer une interface utilisateur personnalisée pour la boîte de réception - #### 5\. Suivre les impressions et les clics - ## Prerequisites - ## Création d'une boîte de réception avec des cartes de contenu pour Swift - #### 1\. Activer le débogage (facultatif) - #### 2\. Créer une vue d'interface utilisateur - #### 3\. Veuillez vous abonner aux mises à jour de la carte de contenu. - #### 4\. Créer une interface utilisateur personnalisée pour la boîte de réception - #### 5\. Suivre les impressions et les clics - ## Prerequisites - ## Création d'une boîte de réception avec des cartes de contenu pour le Web - #### 1\. Activer le débogage (facultatif) - #### 2\. Créer l'interface utilisateur - #### 3\. Veuillez vous abonner aux mises à jour de la carte de contenu. - #### 4\. Créer les éléments de la boîte de réception - #### 5\. Suivre les impressions et les clics - [Messages in-app pour le SDK de Braze](/docs/fr/developer_guide/in_app_messages/index.md): Before you can use this feature, you'll need to integrate the Web Braze SDK. However, no additional setup is required. - # in-app Messages - ## Prerequisites - ## Message types - ## Prerequisites - ## Message types - ## Enabling in-app messages - ### Step 1: Register BrazeInAppMessageManager - ### Step 2: Update the manager's blocklist (optional) - ## Prerequisites - ## Message types - ## Enabling in-app messages - ### Step 1: Create an implementation of BrazeInAppMessagePresenter - ### Step 2: Handle no matching triggers - ## Prerequisites - ## About TV and OTT support - ## Prerequisites - ## Message types - ## Prerequisites - ## Message types - ## Enabling in-app messages - ### Customizing the in-app message presenter on iOS - ## Prerequisites - ## Message types - ## Data model - ### Messages - ### Buttons - ## Prerequisites - ## Message types - ## Enabling in-app messages - ### Step 1: Add an observer - ### Step 2: Access triggered messages - ## Message fields - ### Handling - ### Styling - ### Buttons - ## Prerequisites - ## Enabling in-app messages - ### Step 1: Create a new iOS app - ### Step 2: Get your app's API key - ### Step 3: Integrate BrazeKit - ### Step 4: Create your custom UI - ## Prerequisites - ## Message types - ## Prerequisites - ## Message types - ## Étapes suivantes - [Personnalisez les messages in-app pour le SDK Braze.](/docs/fr/developer_guide/in_app_messages/customization/index.md): Before you can use this feature, you'll need to integrate the Web Braze SDK. - # Personnaliser les messages in-app - ## Prerequisites - ## Custom styles - ### Setting a default style - ### Customizing the z-index - ## Customizing message dismissals - ## Customizing display timing - ## Opening links in a new tab - ## Prerequisites - ## Setting custom manager listeners - ### Step 1: Implement the custom manager listener - #### Step 1.1: Implement IInAppMessageManagerListener - #### Step 1.2: Hook into IAM view lifecycle methods (optional) - ### Step 2: Instruct Braze to use the custom manager listener - #### Altering in-app messages before display - ## Setting custom factories - ### Step 1: Implement the factory - ### Step 2: Instruct Braze to use the factory - #### How it works - ## Custom styles - ### Setting a default style - ### Customizing the font - ## Message dismissals - ### Swiping to dismiss slideup messages - ### Disabling back button dismissals - ### Enabling outside tap dismissals - ## Customizing the orientation - ## Disabling dark theme {#android-in-app-message-dark-theme-customization} - ## Customizing the Google Play review prompt - ## Prerequisites - ## Setting up the UI delegate (required) - ### Step 1: Implement the BrazeInAppMessageUIDelegate protocol - ### Step 2: Assign the delegate object - ## On-click behavior - ### Click action types - ### Customizing on-click behavior - ### Handling the custom behavior - ## Swiping to dismiss slideup messages - ## Customizing modal dismissals - ## Customizing message orientation - ## Customizing display timing - ## Hiding the status bar - ## Disabling dark mode - ## Customizing the app store review prompt - ### Step 1: Set the in-app message delegate - ### Step 2: Disable the default App Store review message - ### Step 3: Create a deep link - ### Step 4: Set custom on-click behavior - ## Prerequisites - ## Methods for logging - ## Handling message data - ### Overriding the default UI delegate - ### Overriding the default native UI - ## Customizing the display behavior - ## Setting a custom listener - [Déclencher des messages in-app via le SDK Braze](/docs/fr/developer_guide/in_app_messages/triggering_messages/index.md): Les messages in-app sont déclenchés lorsque le SDK enregistre l'un des types d'événements personnalisés suivants : Session Start, Push Click, Any Purchase, Specific Purchase et Custom Event (les deux derniers contenant des filtres de propriétés robustes). - # Déclencher des messages in-app {#trigger-in-app-messages} - ## Déclencheurs et réception/distribution de messages {#message-triggers-and-delivery} - ## Types de messages in-app {#types-of-in-app-messages} - ### inapp (standard) {#inapp-standard} - ### templatediam (modélisé) {#templatediam-templated} - ## Paires clé-valeur {#key-value-pairs} - ## Désactivation des déclencheurs automatiques {#disabling-automatic-triggers} - ## Enchaîner deux messages in-app au cours d'une même session {#chaining-two-in-app-messages-in-one-session} - ## Remplacement de la limite de débit par défaut {#overriding-the-default-rate-limit} - ## Déclenchement manuel des messages {#manually-triggering-messages} - ### Utilisation d'un événement côté serveur {#using-a-server-side-event} - #### Étape 1 : Créer un rappel push pour recevoir la notification push silencieuse {#step-1-create-a-push-callback-to-receive-the-silent-push} - #### Étape 2 : Créer une Campaign de notification push {#step-2-create-a-push-campaign} - #### Étape 3 : Créer une Campaign de message in-app {#step-3-create-an-in-app-message-campaign} - #### Étape 1 : Gérer les notifications push silencieuses et les paires clé-valeur {#step-1-handle-silent-push-and-key-value-pairs} - #### Étape 2 : Créer une Campaign de push silencieuse {#step-2-create-a-silent-push-campaign} - #### Étape 3 : Créer une Campaign de message in-app - ### Affichage d'un message prédéfini {#displaying-a-pre-defined-message} - ### Affichage d'un message en temps réel {#displaying-a-message-in-real-time} - ## Causes des retards de messages in-app {#causes-of-in-app-message-delays} - ## Messages d'intention de sortie pour le web {#exit-intent-messages-for-web} - [Messages in-app HTML](/docs/fr/developer_guide/in_app_messages/html_messages/index.md): Before you can use this feature, you'll need to integrate the Android Braze SDK. - # Messages in-app HTML {#html-in-app-messages} - ## Prerequisites - ## About HTML messages - ## Adding the interface to a WebView - ## Embedding YouTube content - ## Using deep links - ## Prerequisites - ## About HTML messages - ## Adding the interface to a WebView - ## Example: Logging a custom event - [Création de liens profonds dans les messages in-app pour le SDK de Braze](/docs/fr/developer_guide/in_app_messages/deep_linking/index.md): Before you can use this feature, you'll need to integrate the Android Braze SDK. - # Création de liens profonds dans les messages in-app {#in-app-message-deep-linking} - ## Prerequisites - ## Creating a universal delegate - ## Deep linking to app settings - ## Customizing WebView activity {#CustomWebviewActivity} - ## Troubleshooting - ## Using Jetpack Compose - ## Prerequisites - ## Handling deep links - ### Step 1: Register a scheme {#register-a-scheme} - ### Step 2: Add a scheme allowlist - ### Step 3: Implement a handler - ## App Transport Security (ATS) - ### Working with ATS - ## Decoding URLs - ## Deep linking to app settings - ## Customization options {#customization-options} - ### Default WebView customization - ### Linking handling customization - #### Universal links {#universal-links} - ## Examples - ### BrazeDelegate - [Intégrer des GIF dans les messages in-app pour le SDK Braze](/docs/fr/developer_guide/in_app_messages/gifs/index.md): Braze offers the ability to use a custom image library to display animated GIFs. Although the example below uses Glide, any image library that supports GIFs is compatible. - # Intégrer des GIF dans les messages in-app - ## About GIFs - ## Integrating a custom image library - ### Step 1: Creating the image loader delegate - ### Fixing image loading for Android SDK 36.0.0 and later - ### Step 2: Setting the image loader delegate - ## Custom Image Loading with Jetpack Compose - ## Prerequisites - ## Integrating a custom image library - ### Step 1: Integrate SDWebImage - ### Step 2: Create a new Swift file - ### Step 3: Add GIFViewProvider - ### Step 4: Modify your AppDelegate.swift - [Enregistrez les données des messages in-app via le SDK Braze.](/docs/fr/developer_guide/in_app_messages/logging_message_data/index.md): Before you can use this feature, you'll need to integrate the Web Braze SDK. - # Enregistrer les données des messages in-app - ## Prerequisites - ## Logging message data - ## Prerequisites - ## Logging message data - ## Accessing message data - ### Listen for in-app message data in the Dart layer - ### Forward in-app message data from the native layer - ### Replaying the callback for in-app messages (optional) - ## Prerequisites - ## Methods for logging - ## Handling message data - ### Overriding the default UI delegate - ### Overriding the default native UI - ## Prerequisites - ## Logging message data - ### Displayed messages - ### Clicked messages - ### Clicked buttons - ### After processing a message - ## Subscribing to in-app messages - ## Parsing messages - ## Logging message data - [Veuillez envoyer un message test pour le SDK Braze.](/docs/fr/developer_guide/in_app_messages/sending_test_messages/index.md): After you set up a test segment, you can use it to test any of your Braze messaging channels. When set up correctly, this only needs to be done a single time. - # Sending test messages - ## Sending a test message - ### Step 1: Create a designated test segment - ### Step 2: Send the message - ## Test limitations - [Tutoriels](/docs/fr/developer_guide/in_app_messages/tutorials/index.md) - [Tutoriel : Affichage conditionnel des messages in-app](/docs/fr/developer_guide/in_app_messages/tutorials/conditionally_displaying_messages/index.md): Before you can use this feature, you'll need to integrate the Web Braze SDK. Cependant, aucune configuration supplémentaire n'est nécessaire. - # Tutoriel : Affichage conditionnel des messages in-app - ## Prerequisites - ## Affichage conditionnel des messages in-app pour le web - #### 1\. Supprimer les appels à automaticallyShowInAppMessages() - #### 2\. Activer le débogage (facultatif) - #### 3\. S'abonner aux envois de messages in-app - #### 4\. Créer une logique conditionnelle - #### 5\. Affichage des messages avec showInAppMessage - ## Prerequisites - ## Affichage conditionnel des messages in-app pour Android - #### 1\. Activer le débogage (facultatif) - #### 2\. Enregistrer les fonctions de rappel du cycle de vie des activités - #### 3\. Configurer un récepteur de messages in-app - #### 4\. Créer une logique conditionnelle - #### 5\. Renvoyer ou rejeter le message - ## Prerequisites - ## Affichage conditionnel des messages in-app pour Swift - #### 1\. Mettre en œuvre le BrazeInAppMessageUIDelegate - #### 2\. Activer le débogage (facultatif) - #### 3\. Configurez votre interface utilisateur Braze et déléguez. - #### 4\. Remplacer DisplayChoice par une logique conditionnelle - [Tutoriel : Personnalisation du style à l'aide de paires clé-valeur](/docs/fr/developer_guide/in_app_messages/tutorials/customizing_message_styling/index.md): Before you can use this feature, you'll need to integrate the Web Braze SDK. Cependant, aucune configuration supplémentaire n'est nécessaire. - # Tutoriel : Personnalisation du style des messages à l'aide de paires clé-valeur - ## Prerequisites - ## Personnalisation du style personnalisé des messages à l'aide de paires clé-valeur pour le Web - #### 1\. Supprimer les appels à automaticallyShowInAppMessages() - #### 2\. Activer le débogage (facultatif) - #### 3\. S'abonner au gestionnaire de rappel des messages in-app. - #### 4\. Accéder à la propriété message.extras - #### 5\. Appel conditionnel showInAppMessage - ## Prerequisites - ## Personnalisation du style des messages à l'aide de paires clé-valeur pour Android - #### 1\. Activer le débogage (facultatif) - #### 2\. Enregistrer les fonctions de rappel du cycle de vie des activités - #### 3\. Créez votre classe de fabrique de vues personnalisée - #### 4\. Déléguer à l'usine par défaut de Braze - #### 5\. Accéder à des paires clé-valeur à partir de inAppMessage.extras - #### 6\. Mettre en place un système personnalisé de IInAppMessageViewFactory - ## Prerequisites - ## Personnalisation du style des messages à l'aide de paires clé-valeur pour Swift - #### 1\. Mettre en œuvre BrazeInAppMessageUIDelegate - #### 2\. Activer le débogage (facultatif) - #### 3\. Préparer les messages avant qu'ils ne soient affichés - #### 4\. Accéder à des paires clé-valeur à partir de message.extras - #### 5\. Mise à jour des attributs de style du message - [Tutoriel : Report et restauration des messages déclenchés](/docs/fr/developer_guide/in_app_messages/tutorials/deferring_triggered_messages/index.md): Before you can use this feature, you'll need to integrate the Web Braze SDK. Cependant, aucune configuration supplémentaire n'est nécessaire. - # Tutoriel : Report et restauration des messages déclenchés - ## Prerequisites - ## Report et restauration des messages déclenchés pour le Web - #### 1\. Supprimer les appels à automaticallyShowInAppMessages() - #### 2\. Activer le débogage (facultatif) - #### 3\. S'abonner au gestionnaire de rappel des messages in-app. - #### 4\. Report de l'instance message - #### 5\. Récupérer un message précédemment différé - #### 6\. Afficher l'envoi de messages différés - #### 7\. Affichage immédiat d'un message - ## Prerequisites - ## Report et restauration des messages déclenchés pour Android - #### 1\. Créer une instance unique de Application - #### 2\. Activer le débogage (facultatif) - #### 3\. Enregistrer les fonctions de rappel du cycle de vie des activités - #### 4\. Configurer un récepteur de messages in-app - #### 5\. Créer une logique conditionnelle - #### 6\. Créer une méthode d'envoi de messages différés - #### 7\. Déclencher la méthode à partir de votre interface utilisateur - ## Prerequisites - ## Report et restauration des messages déclenchés pour Swift - #### 1\. Mettre en œuvre le BrazeInAppMessageUIDelegate - #### 2\. Activer le débogage (facultatif) - #### 3\. Configurez votre interface utilisateur Braze et déléguez. - #### 4\. Remplacer DisplayChoice par une logique conditionnelle - #### 5\. Créer une méthode pour afficher les messages différés - #### 5\. Déclencher la méthode à partir de votre interface utilisateur - [Résolution des problèmes des messages in-app pour le SDK Braze](/docs/fr/developer_guide/in_app_messages/troubleshooting/index.md): Avant de déboguer, ajoutez-vous en tant qu'utilisateur test et consultez Envoyer des messages de test. - # Résolution des problèmes des messages in-app {#troubleshoot-in-app-messages} - ## Commencez ici : identifiez votre symptôme {#start-here-match-your-symptom} - ## Parcours d'investigation standard {#standard-investigation-path} - ## Messages in-app Canvas {#canvas-in-app-messages} - ## Le message in-app ne s'est pas affiché pour un utilisateur {#in-app-message-not-shown-for-one-user} - ## Le message in-app ne s'est pas affiché sur une plateforme {#in-app-message-not-shown-on-one-platform} - ## Le message in-app ne s'est affiché pour aucun utilisateur {#in-app-message-not-shown-for-all-users} - ## Timing et affichage différé {#timing-and-delayed-display} - ## Résolution des problèmes de distribution {#delivery-troubleshooting} - ### Résoudre les problèmes de distribution {#troubleshooting-in-app-message-delivery} - #### Vérifier si les messages sont demandés et retournés {#check-if-messages-are-requested-and-returned} - ##### Résoudre les problèmes de messages non demandés {#troubleshoot-messages-not-being-requested} - ##### Résoudre les problèmes de messages non retournés {#troubleshoot-messages-not-being-returned} - ## Impressions et analyses {#impressions-and-analytics} - ## Résolution des problèmes d'affichage par plateforme {#platform-specific-display-troubleshooting} - ### Troubleshooting display {#troubleshooting-in-app-message-display} - ### Troubleshooting display {#troubleshooting-in-app-message-display} - ### Troubleshooting display {#troubleshooting-in-app-message-display} - ### Troubleshooting asset loading (NSURLError code -1008) {#asset-loading} - #### Domains - #### Examples - ##### Netfox - ##### NetGuard - ##### XNLogger - [Notifications push pour le SDK de Braze](/docs/fr/developer_guide/push_notifications/index.md): Si l'option Redirect to web URL avec Open web URL inside app n'est pas sélectionnée, mais que le lien s'ouvre tout de même dans l'application, il est possible que l'application gère l'URL (par exemple, avec les liens universels sur iOS ou les App Links sur Android). Pour ouvrir le lien dans le navigateur, vérifiez que votre application délègue l'URL au navigateur système lorsque l'utilisateur appuie sur la notification, ou ajustez la gestion des URL de votre application afin que l'action au clic corresponde au paramètre du tableau de bord de Braze. Consultez la documentation push de votre plateforme pour savoir comment les actions au clic et la gestion des URL sont configurées. - # Notifications push {#push-notifications} - ## Prerequisites - ## Push protocols - ## Setting up push notifications - ### Step 1: Configure your service worker - ### Step 2: Register the browser - ### Step 3: Disable skipWaiting (optional) - ## Unsubscribing a user - ## Alternate domains - ### Use cases - ### Considerations - ### Setting up an alternate push domain - #### Step 1: Initiate prompting flow - #### Step 2: Register for push - #### Step 3: Communicate between domains (optional) - ## Frequently Asked Questions (FAQ) - ### Service workers - #### What if I can't register a service worker in the root directory? - #### Can I create a service worker using a Tag Manager? - ### Site security - #### Is HTTPS required? - #### When is a site considered "secure"? - #### What if a secure site is not available? - ## Prerequisites - ## Built-in features - ## About the push notification lifecycle {#push-notification-lifecycle} - ## Setting up push notifications - ### Rate limits - ### Step 1: Add Firebase to your project - ### Step 2: Add Cloud Messaging to your dependencies - ### Step 3: Enable the Firebase Cloud Messaging API - ### Step 4: Create a service account {#service-account} - ### Step 5: Generate JSON credentials {#json} - ### Step 6: Upload your JSON credentials to Braze - ### Step 7: Set up automatic token registration - ### Step 8: Remove automatic requests in your application class - ## Displaying notifications - ### Step 1: Register Braze Firebase Messaging Service - ### Step 2: Conform small icons to design guidelines - ### Step 3: Configure notification icons {#configure-icons} - #### Specifying icons in braze.xml - #### Specifying icon accent color - ### Step 4: Add deep links - #### Enabling automatic deep link opening - ## Handling foreground notifications - ### How it works - ### Customizing foreground behavior - #### Creating custom deep links - #### Adding deep links - #### Customizing back stack behavior - ### Step 5: Define notification channels - ### Step 6: Test notification display and analytics - #### Testing display - #### Testing analytics - #### Testing from command line - ## Conversation push notifications - ### Usage requirements - ## FCM quota exceeded errors - ### Best practices - #### Request a rate limit increase from FCM - #### Apply a workspace rate limit - ## Rate limits - ## Setting up push notifications - ### Step 1: Upload your APNs token - ### Step 2: Enable push capabilities - ### Step 3: Set up push handling - #### Step 3.1: Enable automation in the push property - #### Step 3.2: Override individual configurations (optional) - #### Step 3.1: Register for push notifications with APNs - #### Step 3.2: Register push tokens with Braze - #### Step 3.3: Enable push handling - ##### Default push handling - ##### Foreground push handling - ## Testing notifications {#push-testing} - ## Subscribing to push notifications updates - ## Handling foreground notifications - ### How it works - ## Push primers {#push-primers} - ## Dynamic APNs gateway management - ### Prerequisites - ### How it works - ### Frequently asked questions - #### Why was this feature introduced? - #### How does this impact push delivery performance? - #### Can I disable this feature? - ## About push notifications for Android TV - ## Prerequisites - ## Setting up push notifications - ## Testing Android TV push notifications - ## Best practices - ## Prerequisites - ## Enabling push deep linking - ## Disabling basic push notifications (iOS only) - ## Prerequisites - ## Setting up push notifications - ### Step 1: Complete the initial setup - #### Step 1.1: Register for push - #### Step 1.2: Get your Google Sender ID - #### Step 1.3: Update your braze.xml - #### Step 1.1: Upload APNs certificates - #### Step 1.2: Add push notification support to your app - ### Step 2: Listen for push notification events (optional) - ##### Push notification event fields - ### Step 3: Test displaying push notifications - ## Prerequisites - ## Setting up push notifications - ### Step 1: Register for a Huawei developer account - ### Step 2: Create a new Huawei app in the Braze dashboard - ### Step 3: Integrate the Huawei messaging SDK into your app - ### Step 4: Handle foreground notifications - ### Step 5: Test your push notifications (optional) - #### Step 5.1: Create a new push notification campaign - #### Step 5.2: Send a test push - #### Step 5.3: Set up Huawei segmentation (optional) - ## Prerequisites - ## Setting up push notifications {#setting-up-push-notifications} - ### Step 1: Complete the initial setup - #### Prerequisites - #### Step 1.1: Update your app.json file - #### Step 1.2: Add your Google Sender ID - #### Step 1.3: Add the path to your Google Services JSON - #### Step 1.1: Request for push permissions - #### Step 1.2 (Optional): Migrate your push key - ### Step 2: Request push notifications permission - #### Step 2.1: Listen for push notifications (optional) - ##### Push notification event fields - ### Step 3: Enable deep linking (optional) - #### Step 3.1: Store the push notification payload on app launch - #### Step 3.2: Handle deep links from a closed state - #### Step 3.1: Store the push notification payload on app launch {#step-3-1} - #### Step 3.2: Handle deep links from a closed state - #### Step 3.3: Enable Universal Links (optional) - ### Step 4: Handle foreground notifications - ### Step 5: Send a test push notification - ## Using the Expo plugin - ### Forwarding Android push to additional FMS - ### Using app extensions with Expo Application Services {#app-extensions} - ### Troubleshooting - #### Push notifications stopped working {#troubleshooting-stopped-working} - #### Device token won't register with Braze {#troubleshooting-token-registration} - #### Deep links from push notifications don't open {#troubleshooting-deep-links} - ## Prerequisites - ## Setting up Safari push for mobile - ### Step 1: Create a manifest file {#manifest} - ### Step 2: Link the manifest file {#manifest-link} - ### Step 3: Add a service worker {#service-worker} - ### Step 4: Add to home screen {#add-to-homescreen} - ### Step 5: Show the native push prompt {#push-prompt} - ## Next steps - ## Prerequisites - ## Setting up push notification - ### Step 1: Set up the platform - #### Step 1.1: Enable Firebase - #### Step 1.2: Set your Firebase credentials - #### Step 1.1: Verify integration method - #### Step 1.1: Enable ADM - ### Step 2: Configure push notifications - #### Step 2.1: Configure push settings {#unity_step-21-configure-push-settings} - #### Step 2.1: Upload your APNs token - #### Step 2.2: Enable automatic push - #### Step 2.3: Enable background push (optional) - #### Step 2.4: Disable automatic registration (optional) - #### Step 2.1: Update AndroidManifest.xml - #### Step 2.2: Store your ADM API key - #### Step 2.3: Add ADM Jar - #### Step 2.4: Add Client Secret and Client ID to your Braze dashboard - ### Step 3: Set push listeners - #### Step 3.1: Enable push received listener - #### Step 3.2: Enable push opened listener - #### Step 3.3: Enable push deleted listener - #### Push listener example - #### Step 3.1: Enable push received listener - #### Step 3.2: Enable push opened listener - #### Push listener example - ## Optional configurations - #### Deep linking to in-app resources - #### Adding Braze push notification icons - #### Push token callback - ## Prerequisites - ## Setting up push notifications - ### Step 1: Update your project - ### Step 2: Create your JSON credentials - ### Step 3: Upload your JSON credentials - ### Step 1: Complete the initial setup - ### Step 2: Request push notifications permission - [Personnalisez les notifications push pour le SDK Braze.](/docs/fr/developer_guide/push_notifications/customization/index.md): Before you can use this feature, you'll need to integrate the Android Braze SDK. You'll also need to set up push notifications. - # Personnaliser les notifications push - ## Prerequisites - ## Using a callback for push events {#push-callback} - ## Customizing notification display {#customization-display} - ### Step 1: Create your custom notification factory - ### Step 2: Set your custom notification factory - ## Rendering multicolor text - ### Supported HTML tags - ## Rendering inline images - ### How it works - ### Compatibility - ### Sending an inline image push - ## Settings - ### Notification ID {#notification-id} - ### Firebase Messaging Delivery priority {#fcm-priority} - ### Time to live (TTL) {#ttl} - ### Summary text {#summary-text} - ### Custom URIs {#custom-uri} - ### Notification display priority {#notification-priority} - ### Sounds {#sounds} - ## Prerequisites - ## Customizing action buttons {#push-action-buttons-integration} - ### Manually registering action buttons - #### Step 1: Adding Braze default push categories {#registering} - #### Step 2: Enable interactive push handling {#enable-push-handling} - ## Customizing push categories {#customizing-push-categories} - ### Step 1: Register a category - ### Step 2: Select your categories - ### Example: Custom push category {#example-custom-push-category} - ## Customizing badges - ## Customizing sounds - ### Step 1: Host the sound in your app - #### Converting sound files - ### Step 2: Provide a protocol URL for the sound - ## Settings - ### Key-value pairs - ### Alert options - ### Adding content-available flag - ### Adding mutable-content flag - ### Collapse ID - ### Expiry - ## Prerequisites - ## Settings - ### Time to live (TTL) {#ttl} - ### Summary text {#summary-text} - ### Custom URIs {#custom-uri} - ### Notification display priority - ### Sounds {#sounds} - ## Prerequisites - ## Push customization in React Native - ### iOS customization - ### Android customization - [Création de liens profonds dans les notifications push pour le SDK de Braze](/docs/fr/developer_guide/push_notifications/deep_linking/index.md): Before you can use this feature, you'll need to integrate the Android Braze SDK. - # Création de liens profonds dans les notifications push - ## Prerequisites - ## Creating a universal delegate - ## Deep linking to app settings - ## Customizing WebView activity {#CustomWebviewActivity} - ## Troubleshooting - ## Using Jetpack Compose - ## Prerequisites - ## Handling deep links - ### Step 1: Register a scheme {#register-a-scheme} - ### Step 2: Add a scheme allowlist - ### Step 3: Implement a handler - ## App Transport Security (ATS) - ### Working with ATS - ## Decoding URLs - ## Deep linking to app settings - ## Customization options {#customization-options} - ### Default WebView customization - ### Linking handling customization - #### Universal links {#universal-links} - ## Examples - ### BrazeDelegate - ## Prerequisites - ## Implementing deep linking - ### Step 1: Set up Flutter's built-in handling - ### Step 2: Forward data to the Dart layer (optional) - #### Example: Deep linking to an alert dialog - ## Prerequisites - ## Enabling push deep linking - [Guide sur la création de liens profonds iOS](/docs/fr/developer_guide/push_notifications/ios_deep_linking_guide/index.md): Pour plus de détails sur l'implémentation, consultez Création de liens profonds. Pour la résolution des problèmes, consultez Résolution des problèmes de création de liens profonds. - # Guide sur la création de liens profonds iOS {#ios-deep-linking-guide} - ## Choisir un type de lien {#choosing-a-link-type} - ### Liens profonds avec schéma personnalisé {#custom-scheme-deep-links} - ### Liens universels {#universal-links} - ### « Ouvrir l'URL web dans l'application » {#open-web-url-inside-app} - ## Ce dont vous avez besoin pour chaque type de lien {#what-you-need-for-each-link-type} - ### Liens profonds avec schéma personnalisé - ### Liens universels - ### « Ouvrir l'URL web dans l'application » - ## Quand avez-vous besoin d'un fichier AASA {#when-aasa} - ## Quand avez-vous besoin de code applicatif pour gérer les liens {#when-app-code} - ## Utiliser Branch avec Braze {#branch} - [Résolution des problèmes de création de liens profonds](/docs/fr/developer_guide/push_notifications/deep_linking_troubleshooting/index.md): Si un lien profond de schéma personnalisé (par exemple, myapp://products/123) ouvre votre application mais ne navigue pas vers l'écran souhaité : - # Résolution des problèmes de création de liens profonds {#deep-linking-troubleshooting} - ## Le lien profond de schéma personnalisé n'ouvre pas la vue correcte {#custom-scheme-deep-link-doesnt-open-the-correct-view} - ## Le lien universel s'ouvre dans Safari au lieu de l'application {#universal-link-opens-in-safari-instead-of-the-app} - ### Vérifier le droit Associated Domains {#verify-the-associated-domains-entitlement} - ### Valider le fichier AASA {#validate-the-aasa-file} - ### Vérifier l'AppDelegate {#check-the-appdelegate} - ### Vérifier la configuration du SDK Braze {#verify-braze-sdk-configuration} - ### Vérifier le problème lié à l'appui long {#check-for-the-long-press-issue} - ## Le lien profond provenant d'un e-mail n'ouvre pas l'application {#deep-link-from-email-doesnt-open-the-app} - ### Vérifier le fichier AASA du domaine de suivi des clics {#verify-click-tracking-domain-aasa} - ### Vérifier la chaîne de redirection {#check-the-redirect-chain} - ## Le lien profond fonctionne depuis les notifications push mais pas depuis les messages in-app (ou inversement) {#deep-link-works-from-push-but-not-from-in-app-messages-or-vice-versa} - ### Vérifier le BrazeDelegate {#check-the-brazedelegate} - ### Activer la journalisation détaillée {#enable-verbose-logging} - ### Vérifier les délégués d'affichage personnalisés {#check-for-custom-display-delegates} - ## « Ouvrir l'URL Web dans l'application » affiche une page vide ou défectueuse {#open-web-url-inside-app-shows-a-blank-or-broken-page} - ## Résolution des problèmes de Branch avec Braze {#branch} - ### Vérifier que le BrazeDelegate route vers Branch {#verify-the-brazedelegate-routes-to-branch} - ### Vérifier le domaine du lien Branch {#check-branch-link-domain} - ### Activer la journalisation des deux SDK {#enable-both-sdks-logging} - ### Vérifier la configuration du tableau de bord Branch {#check-branch-dashboard-configuration} - ### Tester les liens Branch de manière indépendante {#test-branch-links-independently} - ## Conseils généraux de débogage {#general-debugging-tips} - ### Utiliser la journalisation détaillée {#use-verbose-logging} - ### Tester les liens de manière isolée {#test-links-in-isolation} - ### Tester sur un appareil physique {#test-on-a-physical-device} - [Configurer les notifications push silencieuses pour le SDK Braze](/docs/fr/developer_guide/push_notifications/silent/index.md): Before you can use this feature, you'll need to integrate the Android Braze SDK. You'll also need to set up push notifications. - # Notifications push silencieuses - ## Prerequisites - ## Setting up silent push notifications - ## Prerequisites - ## iOS limitations - ## Setting up silent push notifications - ## Sending silent push notifications - ## Ignoring internal push notifications - ### Step 1: Check your app for automatic actions - ### Step 2: Use the internal push utility method - ## Prerequisites - ## Setting up silent push notifications - [Configurer des notifications push riches pour le SDK Braze](/docs/fr/developer_guide/push_notifications/rich/index.md): Before you can use this feature, you'll need to integrate the Swift Braze SDK. You'll also need to set up push notifications. - # Notifications push riches - ## Prerequisites - ## Setting up rich push notifications - ### Step 1: Creating a service extension - ### Step 2: Setting up the notification service extension - ### Step 3: Adding an App Group - ### Step 4: Integrating rich push notifications - #### Adding the rich push framework to your app - #### Using your own UNNotificationServiceExtension - ### Step 5: Configuring the App Group in Braze - ### Step 6: Creating a rich notification in your dashboard - ## Prerequisites - ## Setting up rich push notifications - ### Step 1: Create a notification service extension - ### Step 2: Add a new target - ### Step 3: Reinstall your CocoaPods dependencies - ## Prerequisites - ## Using Expo to enable rich push notifications - [Configurer le contenu push pour le SDK Braze](/docs/fr/developer_guide/push_notifications/push_stories/index.md): Before you can use this feature, you'll need to integrate the Swift Braze SDK. You'll also need to set up push notifications, which includes implementing the UNNotification framework. - # Contenu push - ## Prerequisites - ## Setting up Push Stories - ### Step 1: Adding the Notification Content Extension target {#notification-content-extension} - ### Step 2: Enable capabilities {#enable-capabilities} - #### Adding an App Group - ### Step 3: Adding the Push Story framework to your app {#enable-capabilities} - ### Step 4: Updating your notification view controller {#enable-capabilities} - #### Custom handling push story events - ### Step 5: Setting the Notification Content Extension plist {#notification-content-extension} - ### Step 6: Updating the Braze integration in your main app {#update-braze} - ## Prerequisites - ## Setting up push stories - ### Step 1: Create a notification content extension - ### Step 2: Configure your push app group - ### Step 3: Add a new target - ### Step 4: Reinstall your CocoaPods dependencies - ## Prerequisites - ## Enabling push stories - [Configurer des invites de pression douce pour le SDK Braze](/docs/fr/developer_guide/push_notifications/soft_push_prompts/index.md): Before you can use this feature, you'll need to integrate the Web Braze SDK. You'll also need to set up push notifications. - # Invitations à pousser pour le Web - ## Prerequisites - ## About soft push prompts - ## Setting up soft push prompts - ### Step 1: Create a push primer campaign - ### Step 2: Remove calls - ### Step 3: Update integration - [Analytique push et journalisation d'événements personnalisés](/docs/fr/developer_guide/push_notifications/logging_message_data/index.md): Avant de commencer, effectuez l'intégration initiale des notifications push pour votre plateforme : - # Analytique push et journalisation d'événements personnalisés {#push-analytics-and-custom-event-logging} - ## Conditions préalables {#prerequisites} - ## Analytique push native vs. journalisation d'événements personnalisés {#native-push-analytics-vs-custom-event-logging} - ## Ce que Braze enregistre automatiquement {#what-braze-logs-automatically} - ## Préserver l'analytique push native avec un gestionnaire push personnalisé {#preserving-native-push-analytics-with-custom-push-handling} - ## Journaliser des données personnalisées à partir des payloads push {#logging-custom-data-from-push-payloads} - ### Option A : Journaliser avec l'endpoint /users/track {#option-a-log-with-the-userstrack-endpoint} - ### Option B : Journaliser avec les méthodes du SDK après le lancement de l'application {#option-b-log-with-sdk-methods-after-app-launch} - ## Journaliser depuis une extension de contenu de notification (Swift) {#logging-from-a-notification-content-extension-swift} - ### Étape 1 : Configurer les groupes d'applications dans Xcode {#step-1-configure-app-groups-in-xcode} - ### Étape 2 : Choisir ce que vous souhaitez journaliser {#step-2-choose-what-to-log} - #### Enregistrer des événements personnalisés {#saving-custom-events} - #### Envoyer des événements personnalisés à Braze {#sending-custom-events-to-braze} - #### Enregistrer des attributs personnalisés {#saving-custom-attributes} - #### Envoyer des attributs personnalisés à Braze {#sending-custom-attributes-to-braze} - #### Enregistrer des attributs utilisateur {#saving-user-attributes} - #### Envoyer des attributs utilisateur à Braze {#sending-user-attributes-to-braze} - #### Fichier utilitaire RemoteStorage {#remotestorage-helper-file} - #### Fichier utilitaire UserAttribute {#userattribute-helper-file} - #### Fichier utilitaire EventName dictionary {#eventname-dictionary-helper-file} - ## Analyser les résultats {#analyzing-results} - ## Références associées {#related-references} - [Envoyer des messages de test](/docs/fr/developer_guide/push_notifications/sending_test_messages/index.md): After you set up a test segment, you can use it to test any of your Braze messaging channels. When set up correctly, this only needs to be done a single time. - # Sending test messages - ## Sending a test message - ### Step 1: Create a designated test segment - ### Step 2: Send the message - ## Test limitations - [Exemples de notifications push avancées pour le SDK de Braze](/docs/fr/developer_guide/push_notifications/examples/index.md): Before you can use this feature, you'll need to integrate the Android Braze SDK. You'll also need to set up push notifications. - # Exemples de notifications push avancées {#advanced-push-notification-examples} - ## Prerequisites - ## Custom notification layout - ### Step 1: Add a custom layout - ### Step 2: Create a custom notification factory - ### Step 3: Map custom data - ### Step 4: Set the custom notification factory - ### Step 5: Send the activity - #### Example curl command - #### Request parameters - ### Step 6: Update the activity - ## Personalized push notifications - ## Prerequisites - ## Notification content app extensions - ### Requirements - ## Interactive push notification - ### Dashboard configuration - ## Personalized push notifications - ### Dashboard configuration - ### Handling key-value pairs - #### Parsing Key-Value Pairs from Push Notifications - ## Information capture push notification - ### Dashboard configuration - ### Handling button actions - ### Dismissing pushes - [À propos des états d'abonnement push](/docs/fr/developer_guide/push_notifications/subscription_states/index.md): A "Push Subscription State" in Braze identifies a user's global preference for their desire to receive push notifications. Because the subscription state is user-based, it is not specific to any individual app. Subscription states become helpful flags when deciding which users to target for push notifications. - # À propos des états d'abonnement push - ## Push subscription states {#push-sub-states} - ### Push registration and reachable users - ### Updating push subscription states {#update-push-subscription-state} - #### Automatic opt-in (default) - #### SDK integration - #### REST API - ### Differences between push enablement and push subscription status - ### Imported push tokens (iOS) - ### Checking push subscription state - [Résolution des problèmes des notifications push pour le SDK Braze](/docs/fr/developer_guide/push_notifications/troubleshooting/index.md): If you're experiencing issues after setting up push notifications, consider the following: - # Résolution des problèmes des notifications push {#troubleshoot-push-notifications} - ## Troubleshooting - ## Understanding the Braze push workflow - ### Step 1: Configuring your Google Cloud API key - ### Step 2: Devices register for FCM and provide Braze with push tokens - ### Step 3: Launching a Braze push campaign - ### Step 4: Removing invalid tokens - ## Utilizing the push error logs - ## Troubleshooting scenarios - ### Push isn't sending - ### No "push registered" users showing in the Braze dashboard (prior to sending messages) - #### Incorrect sender ID - #### Braze registration not occurring - #### Google Play Services not present - #### Device not connected to the internet - ### Tapping push notification doesn't open the app - ### Push notifications bounced - #### Error: MismatchSenderID - #### Error: InvalidRegistration - #### Error: NotRegistered - ### Push notifications sent but not displayed on users' devices - #### Application was force quit - #### BrazeFirebaseMessagingService not registered - #### Firewall is blocking push - #### Custom notification factory returning null - ### "Push registered" users no longer enabled after sending messages - #### Application was uninstalled - #### Invalid Firebase Cloud Messaging server key - ### Push clicks not logged - ### Deep links not working - #### Verify deep link configuration - #### Verify custom handling logic - #### Disable back stack behavior - ## Understanding the Braze/APNs workflow - ### Step 1: Configuring the push certificate and provisioning profile - ### Step 2: Devices register for APNs and provide Braze with push tokens - #### Considerations for push token generation - ### Step 3: Launching a Braze push campaign - ### Step 4: Removing invalid tokens - ## Using the push error logs - ### Message Activity Log errors - #### Received unregistered sending to push token {#received-unregistered-sending} - #### Device token not for topic - #### BadDeviceToken sending to push token - ## Push registration issues - ### No push registration prompt - ### No "push registered" users showing in the dashboard (prior to sending messages) - ## Push notifications sent but not displayed on users’ devices - ### "Push registered" users no longer enabled after sending messages - #### Dashboard and app certificate mismatch - #### Application was uninstalled - #### Regenerating your provisioning profile - ### Messages not delivered to "push registered" users - #### App is foregrounded - #### Test notification scheduled incorrectly - ### User not "push registered" for the app being tested - ## Push clicks not logged {#push-clicks-not-logged} - ## Deep links not working - ### Web links from push clicks not opening - ### Deep links from push clicks not opening - ## Understanding the Braze push workflow - ### Step 1: Configuring your Google Cloud API key - ### Step 2: Devices register for FCM and provide Braze with push tokens - ### Step 3: Launching a Braze push campaign - ### Step 4: Removing invalid tokens - ## Utilizing the push error logs - ## Troubleshooting scenarios - ### Push isn't sending - ### No "push registered" users showing in the Braze dashboard (prior to sending messages) - #### Incorrect sender ID - #### Braze registration not occurring - #### Google Play Services not present - #### Device not connected to the internet - ### Tapping push notification doesn't open the app - ### Push notifications bounced - #### Error: MismatchSenderID - #### Error: InvalidRegistration - #### Error: NotRegistered - ### Push notifications sent but not displayed on users' devices - #### Application was force quit - #### BrazeFirebaseMessagingService not registered - #### Firewall is blocking push - #### Custom notification factory returning null - ### "Push registered" users no longer enabled after sending messages - #### Application was uninstalled - #### Invalid Firebase Cloud Messaging server key - ### Push clicks not logged - ### Deep links not working - #### Verify deep link configuration - #### Verify custom handling logic - #### Disable back stack behavior - ## Troubleshooting - ### Push doesn't appear after app is closed from task switcher - ### Custom notification factory not being set correctly - ## Sauts de ligne dans les notifications push {#push-linebreaks} - [Activités en ligne/en production/instantanées pour le SDK Braze](/docs/fr/developer_guide/live_notifications/index.md) - [Mises à jour en direct pour le SDK Android de Braze](/docs/fr/developer_guide/live_notifications/live_updates/index.md): Vous pouvez utiliser l'interface IBrazeNotificationFactory pour personnaliser l'affichage des notifications push de Braze. En étendant BrazeNotificationFactory, Braze appellera la méthode createNotification() de votre fabrique avant que la notification ne soit affichée à l'utilisateur. Il transmettra ensuite un payload contenant des paires clé-valeur personnalisées envoyées via le tableau de bord de Braze ou la REST API. - # Mises à jour en direct pour Android {#live-updates-for-android} - ## Fonctionnement {#how-it-works} - ## Afficher une mise à jour en direct {#displaying-a-live-update} - ### Prerequisites - ### Étape 1 : Créer une fabrique de notifications personnalisée {#step-1-create-a-custom-notification-factory} - ### Étape 2 : Mapper les données personnalisées {#step-2-map-custom-data} - ### Étape 3 : Définir la fabrique de notifications personnalisée {#step-3-set-the-custom-notification-factory} - ### Étape 4 : Envoyer l'activité {#step-4-send-the-activity} - #### Exemple de commande curl {#example-curl-command} - #### Paramètres de la requête {#request-parameters} - ### Étape 5 : Mettre à jour l'activité {#step-5-update-the-activity} - [Activités en direct pour le SDK Swift de Braze](/docs/fr/developer_guide/live_notifications/live_activities/index.md): !Un suivi de livraison d'activité en direct sur l'écran de verrouillage d'un iPhone. Une barre d'état avec une voiture est presque à moitié remplie. Le texte indique « 2 min until pickup ».{: style="max-width:40%;float:right;margin-left:15px;"} - # Activités en direct pour Swift {#live-activities-for-swift} - ## Fonctionnement {#how-it-works} - ## Diagramme de séquence {#sequence-diagram} - ## Implémenter une activité en direct {#implementing-a-live-activity} - ### Prerequisites - ### Étape 1 : Créer une activité {#create-an-activity} - #### Exemple {#example} - ### Étape 2 : Démarrer l'activité {#start-the-activity} - #### Étape 2.1 : Ajouter BrazeKit à votre extension de widget {#step-21-add-brazekit-to-your-widget-extension} - #### Étape 2.2 : Ajouter le protocole BrazeLiveActivityAttributes {#brazeActivityAttributes} - #### Étape 2.3 : S'inscrire au push-to-start {#step-23-register-for-push-to-start} - ###### Exemple - #### Étape 2.4 : Envoyer une notification push-to-start {#step-24-send-a-push-to-start-notification} - #### Exemple - ### Étape 3 : Reprendre le suivi de l'activité {#resume-activity-tracking} - ###### Exemple - ### Étape 4 : Mettre à jour l'activité {#update-the-activity} - ### Étape 5 : Terminer l'activité {#end-the-activity} - #### Planifier la fermeture automatique {#arranging-automatic-dismissal} - ## Suivi des activités en direct {#tracking-live-activities} - ## Observer les événements d'activité en direct (facultatif) {#observe-live-activity-events} - ### Configurer les abonnements {#set-up-subscriptions} - ### subscribeToStateUpdates {#subscribe-to-state-updates} - #### Événements au niveau du type {#type-scoped-events} - #### Événements au niveau de l'instance {#instance-scoped-events} - ###### Exemple - ### subscribeToErrors {#subscribe-to-errors} - #### Erreurs au niveau du type {#type-scoped-errors} - #### Erreurs au niveau de l'instance {#instance-scoped-errors} - ###### Exemple - ### Gérer les mises à jour de l'état du contenu (facultatif) {#handle-content-state} - #### Type d'attributs unique {#single-attributes-type} - #### Types d'attributs multiples {#multiple-attributes-types} - ## Foire aux questions (FAQ) {#faq} - ### Fonctionnalité et support {#functionality-and-support} - #### Quelles plateformes prennent en charge les activités en direct ? {#what-platforms-support-live-activities} - #### Les applications React Native prennent-elles en charge les activités en direct ? {#do-react-native-apps-support-live-activities} - #### Braze prend-il en charge les activités en direct en tant que campagne ou étape Canvas ? {#does-braze-support-live-activities-as-a-campaign-or-canvas-step} - ### Notifications push et activités en direct {#push-notifications-and-live-activities} - #### Que se passe-t-il si une notification push est envoyée alors qu'une activité en direct est active ? {#what-happens-if-a-push-notification-is-sent-while-a-live-activity-is-active} - #### Si les activités en direct exploitent la fonctionnalité de notification push, les notifications push doivent-elles être activées pour recevoir les activités en direct ? {#if-live-activities-leverage-push-message-functionality-do-push-notifications-need-to-be-enabled-to-receive-live-activities} - #### Les activités en direct nécessitent-elles des amorces de notification push ? {#do-live-activities-require-push-primers} - ### Sujets techniques et résolution des problèmes {#technical-topics-and-troubleshooting} - #### Comment savoir si les activités en direct comportent des erreurs ? {#how-do-i-know-if-live-activities-has-errors} - #### Après avoir envoyé une notification push-to-start, pourquoi n'ai-je pas reçu mon activité en direct ? {#after-sending-a-push-to-start-notification-why-havent-i-received-my-live-activity} - #### Après avoir démarré mon activité en direct avec push-to-start, pourquoi ne reçoit-elle pas de nouvelles mises à jour ? {#after-starting-my-live-activity-with-push-to-start-why-isnt-it-receiving-new-updates} - #### Je reçois une réponse « Accès refusé » lorsque j'essaie d'utiliser l'endpoint liveactivity/update. Pourquoi ? {#i-am-receiving-an-access-denied-response-when-i-try-to-use-the-liveactivityupdate-endpoint-why} - #### L'endpoint messages/send partage-t-il les limites de débit avec l'endpoint messages/liveactivity/update ? {#does-the-messagessend-endpoint-share-rate-limits-with-the-messagesliveactivityupdate-endpoint} - [Indicateurs de fonctionnalité du SDK Braze](/docs/fr/developer_guide/feature_flags/index.md): When you're ready to create your own feature flags, check out Creating feature flags. - # Feature flags - ## Prerequisites - ## Use cases - ### Gradual rollouts - ### Remotely control app variables - ### Message coordination - ### Feature experimentation - ### Segmentation - ## Plan limitations - [Création d’indicateurs de fonctionnalité](/docs/fr/developer_guide/feature_flags/create/index.md): To use feature flags, ensure your SDKs are up to date with at least these minimum versions: - # Create feature flags - ## Prerequisites - ### SDK version - ### Braze permissions - ## Creating a feature flag - ### Step 1: Create a new feature flag - ### Step 2: Fill out the details - ### Step 2a: Create custom properties - ### Step 4: Choose segments to target - ### Step 5: Set the rollout traffic {#rollout} - ## Multi-rule feature flag rollouts - ### Evaluation order - ### User qualification - ### "Everyone Else" rule - ### Re-ordering rules - ### Multi-rule feature flag use cases - #### Gradually release a checkout page - #### Reach internal testers first - ## Using the "enabled" field for your feature flags {#enabled} - ### Logging a feature flag impression {#impressions} - ### Accessing properties {#accessing-properties} - ### Getting a list of all feature flags {#get-list-of-flags} - ### Refreshing feature flags {#refreshing} - ### Listening for changes {#updates} - ## Checking user eligibility - ## Viewing the changelog - ## Segmenting with feature flags {#segmentation} - ## Best practices - ### Don't combine rollouts with Canvases or experiments - ### Naming conventions - ### Planning ahead - ### Be descriptive - ### Clean up old feature flags - [Indicateurs de fonctionnalité dans Canvas](/docs/fr/developer_guide/feature_flags/canvas/index.md) - [Expériences d’indicateurs de fonctionnalités](/docs/fr/developer_guide/feature_flags/experiments/index.md): Before you can track user data in the experiment, your app needs to record when a user interacts with a feature flag. This is called a feature flag impression. Make sure to log a feature flag impression whenever a user sees or could have seen the feature you're testing, even if they're in the control group. - # Feature flag experiments - ## Prerequisites - ## Creating a feature flag experiment - ### Step 1: Create an experiment - ### Step 2: Add experiment variants - ### Step 3: Overwrite properties (optional) - ### Step 4: Choose users to target - ### Step 5: Distribute variants - ### Step 6: Assign conversions - ### Step 7: Review and launch - ## Reviewing the results - ### Campaign analytics - ### Feature flag experiment performance - [Foire aux questions](/docs/fr/developer_guide/feature_flags/faq/index.md): Braze supports feature flags on iOS, Android, and Web platforms with the following SDK version requirements: - # Frequently asked questions - ## Functionality and support - ### What platforms are Braze feature flags supported on? {#platforms} - ### What is the level of effort involved when implementing a feature flag? {#level-of-effort} - ### How can feature flags benefit Marketing teams? {#marketing-teams} - ### How can feature flags benefit Product teams? {#product-teams} - ### How can feature flags benefit engineering teams? {#engineering-teams} - ## Feature rollouts and targeting - ### Can a feature flag be rolled out to only a select group of users? {#target-users} - ### How does adjusting the rollout percentage affect users who were previously bucketed into the enabled group? {#random-buckets} - ## Technical topics - ### Can feature flags be used to control when the Braze SDK is initialized? {#initialization} - ### How frequently does the SDK refresh feature flags? {#refresh-frequency} - ### Are feature flags available while a user is offline? {#offline} - ### What happens if feature flags are refreshed mid-session? {#listen-for-updates} - ### Why aren't users in my Global Control Group receiving feature flags experiments? - ## Additional questions? - [À propos de l'analyse pour le SDK de Braze](/docs/fr/developer_guide/analytics/index.md): Lors de la mise en œuvre de Braze, n'oubliez pas de discuter des objectifs marketing avec votre équipe, afin de décider au mieux des données que vous souhaitez suivre et de la manière dont vous souhaitez les suivre avec Braze. Pour un exemple, consultez notre étude de cas sur l'application Taxi/covoiturage à la fin de ce guide. - # Analyse {#analytics} - ## Données collectées automatiquement {#automatically-collected-data} - ## Événements personnalisés {#custom-events} - ### Stockage des événements personnalisés {#custom-event-storage} - ### Propriétés d'événement personnalisé {#custom-event-properties} - ## Attributs personnalisés {#custom-attributes} - ### Stockage des attributs personnalisés {#custom-attribute-storage} - ### Types de données des attributs personnalisés {#custom-attribute-data-types} - #### Chaînes de caractères (caractères alphanumériques) {#strings-alphanumeric-characters} - #### Tableaux {#arrays} - #### Dates {#dates} - #### Nombres {#integers} - #### Valeurs booléennes (vrai/faux) {#booleans-truefalse} - ## Événements d'achat et suivi du chiffre d'affaires {#purchase-events-revenue-tracking} - ## Cas d'utilisation : application de taxi/covoiturage {#example-case} - ## Bonnes pratiques {#best-practices} - ### Bonnes pratiques générales {#general-best-practices} - #### Utiliser les propriétés d'événement {#use-event-properties} - ### Bonnes pratiques de développement {#development-best-practices} - #### Définir les ID utilisateur pour chaque utilisateur {#set-user-ids-for-every-user} - #### Donnez des noms lisibles aux événements personnalisés et aux attributs {#give-custom-events-and-attributes-readable-names} - #### Enregistrez les attributs uniquement lorsqu'ils changent {#only-log-attributes-when-they-change} - #### Évitez de générer des noms d'événements par programmation {#avoid-programmatically-generating-event-names} - ### Limitations et contraintes techniques {#technical-limitations-and-constraints} - #### Contraintes de longueur {#length-constraints} - #### Contraintes de contenu {#content-constraints} - #### Clés réservées {#reserved-keys} - #### Définitions de valeur {#value-definitions} - ### Analyse d'un champ de nom générique {#parsing-a-generic-name-field} - [Définir les ID d'utilisateur via le SDK Braze](/docs/fr/developer_guide/analytics/setting_user_ids/index.md): Pour les SDK wrapper non répertoriés, utilisez plutôt la méthode native Android ou Swift correspondante. - # Définir les ID d'utilisateur {#set-user-ids} - ## À propos des utilisateurs anonymes {#about-anonymous-users} - ### Empêcher le suivi des utilisateurs anonymes {#preventing-anonymous-user-tracking} - ## Définition d'un ID utilisateur {#setting-a-user-id} - ### Fonctionnement de changeUser() {#how-changeuser-works} - ## Alias d'utilisateur {#user-aliases} - ### Fonctionnement {#how-they-work} - ### Définition d'un alias d'utilisateur {#setting-a-user-alias} - ## Bonnes pratiques de dénomination des ID {#naming-best-practices} - [Définissez les attributs utilisateur via le SDK Braze.](/docs/fr/developer_guide/analytics/setting_user_attributes/index.md): Pour les SDK wrapper non répertoriés, utilisez plutôt la méthode native Android ou Swift correspondante. - # Définir les attributs de l'utilisateur - ## Prerequisites - ## Default user attributes - ### Predefined methods - ### Setting default attributes - ### Unsetting default attributes - ## Custom user attributes - ### Setting custom attributes - ### Unsetting custom attributes - ### Nesting custom attributes - ### Using the REST API - ## Setting user subscriptions - ### Unsubscribing a user from email - ### Unsubscribing a user from push - ## Prerequisites - ## Default user attributes - ### Predefined methods - ### Setting default attributes - ### Unsetting default attributes - ## Custom user attributes - ### Setting custom attributes - ### Unsetting custom attributes - ### Nesting custom attributes - ### Using the REST API - ## Setting user subscriptions - ### Setting email subscriptions - ### Setting push notification subscription - ## Prerequisites - ## Default user attributes - ### Supported attributes - ### Setting default attributes - ### Unsetting default attributes - ## Custom user attributes - ### Setting custom attributes - ### Incrementing or decrementing custom attributes - ### Unsetting custom attributes - ### Nesting custom attributes - ### Using the REST API - ## Setting user subscriptions - ### Setting email subscriptions - ### Setting push notification subscriptions - ## Prerequisites - ## Default user attributes - ### Supported attributes - ### Setting default attributes - ## Custom user attributes - ### Setting custom attributes - ### Unsetting custom attributes - ## Prerequisites - ## Default user attributes - ### Predefined methods - ### Setting default attributes - ## Custom user attributes - ### Settings custom attributes - ### Incrementing and decrementing custom attributes - ### Unsetting custom attributes - ### Using the REST API - ## Setting email subscriptions - ## Prerequisites - ## Default user attributes - ### Predefined methods - ### Setting default attributes - ### Unsetting default attributes - ## Custom user attributes - ### Setting custom attributes - ### Unsetting custom attributes - ### Using the REST API - ## Setting user subscriptions - ### Setting email subscriptions - ### Setting push notification subscriptions - ## Prerequisites - ## Logging custom attributes - ### Default user attributes - ### Custom user attributes - #### Unsetting custom attributes - #### Custom Attribute Arrays - [Enregistrer des événements personnalisés via le SDK Braze](/docs/fr/developer_guide/analytics/logging_events/index.md): Pour les SDK wrapper non répertoriés, utilisez plutôt la méthode native Android ou Swift correspondante. - # Enregistrer des événements personnalisés {#log-custom-events} - ## Enregistrement d'un événement personnalisé {#logging-a-custom-event} - ## Ajouter des propriétés de métadonnées {#adding-metadata-properties} - ## Bonnes pratiques {#best-practices} - ### Vérifier les événements {#verify-events} - ### Vérifier le journal {#verify-log} - ### Vérifier les valeurs {#verify-values} - ## Résolution des problèmes liés aux événements personnalisés {#troubleshooting-custom-events} - ### Vérifier le déclencheur de l'événement personnalisé {#verifying-the-custom-event-trigger} - ### Les événements personnalisés sont enregistrés sur un profil anonyme {#custom-events-are-logged-to-an-anonymous-profile} - ### Vérifier la configuration de l'enregistrement des événements personnalisés {#verifying-custom-event-logging-setup} - [Enregistrez les achats via le SDK Braze.](/docs/fr/developer_guide/analytics/logging_purchases/index.md): Pour les SDK wrapper non répertoriés, utilisez plutôt la méthode native Android ou Swift correspondante. - # Enregistrer les achats - ## Enregistrement des achats et des chiffres d'affaires - ### Ajouter des propriétés - ### Ajout d’une quantité - ### Utiliser l'API REST - ## Enregistrement des commandes - ## Clés réservées - ## Devises prises en charge - [Enregistrer des événements eCommerce via le SDK Braze](/docs/fr/developer_guide/analytics/logging_ecommerce_events/index.md): Pour les SDK wrapper non répertoriés, utilisez la méthode native Android ou Swift correspondante à la place. - # Enregistrer des événements eCommerce {#log-ecommerce-events} - ## Schémas d'événements {#event-schemas} - ## Android - ### Blocs de construction partagés {#shared-building-blocks} - ### Validation côté client {#client-side-validation} - ### Exemples de code {#code-examples} - ## iOS - ### Exemples de code - ## Web - ### Exemples de code - ## Enregistrement manuel avec logCustomEvent {#manual-logging-with-logcustomevent} - [Enregistrer les données de la carte de contenu via le SDK Braze](/docs/fr/developer_guide/analytics/logging_channel_data/content_cards/index.md): When implementing your custom Content Cards, you can parse the Content Card objects and extract their payload data such as title, cardDescription, and imageUrl. Then, you can use the resulting model data to populate your custom UI. - # Enregistrer les données de la carte de contenu - ## Logging analytics - ### Step 1: Create a private subscriber variable - ### Step 2: Subscribe to updates - ### Step 3: Unsubscribe - ### Step 1: Create a private subscriber variable - ### Step 2: Subscribe to updates - ### Step 3: Unsubscribe - ### Cancellable - ### AsyncStream - ## Logging events - ## Handling on-click behavior - [Enregistrez les données des messages in-app via le SDK Braze.](/docs/fr/developer_guide/analytics/logging_channel_data/in_app_messages/index.md): Before you can use this feature, you'll need to integrate the Web Braze SDK. - # Enregistrer les données des messages in-app - ## Prerequisites - ## Logging message data - ## Prerequisites - ## Logging message data - ## Accessing message data - ### Listen for in-app message data in the Dart layer - ### Forward in-app message data from the native layer - ### Replaying the callback for in-app messages (optional) - ## Prerequisites - ## Methods for logging - ## Handling message data - ### Overriding the default UI delegate - ### Overriding the default native UI - ## Prerequisites - ## Logging message data - ### Displayed messages - ### Clicked messages - ### Clicked buttons - ### After processing a message - ## Subscribing to in-app messages - ## Parsing messages - ## Logging message data - [Enregistrer les données de notification push via le SDK Braze](/docs/fr/developer_guide/analytics/logging_channel_data/push_notifications/index.md): You can log analytics in real-time by making calls to the /users/track endpoint. To log analytics, send the braze_id value from the Braze dashboard to identify which user profile to update. - # Enregistrer les données des notifications push - ## Logging data with the Braze API (recommended) - ## Manually logging data - ## Logging data with the Braze API (recommended) - ## Logging data manually - ### Step 1: Configure app groups within Xcode - ### Step 2: Integrate code snippets - #### Saving custom events - #### Sending custom events to Braze - #### Saving custom attributes - #### Sending custom attributes to Braze - #### Saving user attributes - #### Sending user attributes to Braze - #### Helper files - [Suivre les sessions avec le SDK Braze](/docs/fr/developer_guide/analytics/tracking_sessions/index.md): Pour les SDK wrapper non répertoriés, utilisez plutôt la méthode native Android ou Swift correspondante. - # Suivre les sessions {#track-sessions} - ## About the session lifecycle - ## Définition de l'inactivité {#defining-inactivity} - ### Comment l'inactivité est mesurée {#how-inactivity-is-measured} - ### Configuration du délai d'expiration de la session {#session-timeout-configuration} - ### Exemple : comprendre les scénarios d'inactivité {#example-understanding-inactivity-scenarios} - ### Suivi de l'inactivité personnalisée {#tracking-custom-inactivity} - ## S'abonner aux mises à jour de session {#subscribing-to-session-updates} - ### Étape 1 : S'abonner aux mises à jour {#step-1-subscribe-to-updates} - ### Étape 2 : Tester le suivi de session (facultatif) {#step-2-test-session-tracking-optional} - ## Modifier le délai de session par défaut {#change-session-timeout} - ## Résolution des problèmes {#troubleshooting} - ### Le profil utilisateur affiche 0 session {#user-profile-has-0-sessions} - ### Certains utilisateurs n'enregistrent pas de sessions {#some-users-are-not-logging-sessions} - [Suivi de la localisation via le SDK Braze](/docs/fr/developer_guide/analytics/tracking_location/index.md): To get a user's current location, use the geolocation API's getCurrentPosition() method. This will immediately prompt the user to allow or disallow tracking (unless they've already done so). - # Localisation de l'emplacement de la voie - ## Logging the current location - ## Continuously tracking the location - ## Logging the current location - ## Continuously tracking the location - ## Disabling continuous tracking - ## Logging the current location - ### Step 1: Configure your project - ### Step 2: Log the user's location - ## Prerequisites - ## Setting the last known location - ## Setting a custom location attribute - ## Requesting location initialization (Android only) - ## Geofences - ### Manually requesting geofences - [Suivez les désinstallations via le SDK Braze.](/docs/fr/developer_guide/analytics/tracking_uninstalls/index.md): The Android Braze SDK uses Firebase Cloud Messaging (FCM) to send silent push notifications, which are used to collect uninstall tracking analytics. If you haven't already, set up or migrate to the Firebase Cloud Messaging API for push notifications. - # Suivre les désinstallations - ## Setting up uninstall tracking - ### Step 1: Set up FCM - ### Step 2: Manually detect uninstall tracking (optional) - ### Step 3: Remove automatic server pings - ### Step 4: Enable uninstall tracking - ## Setting up uninstall tracking - ### Step 1: Enable background push - ### Step 2: Ignore internal push notifications - ### Step 3: Send a test push (optional) - ### Step 3: Enable uninstall tracking - [Gérer la collecte de données pour le SDK Braze](/docs/fr/developer_guide/analytics/managing_data_collection/index.md): This guide uses code samples from the Braze Web SDK 4.0.0+. To upgrade to the latest Web SDK version, see SDK Upgrade Guide. - # Gestion de la collecte de données {#manage-data-collection} - ## Disabling data tracking - ### Best practices - ## Resuming data tracking - ## Google Play privacy questionnaire {#privacy-questionnaire} - ### Questions - ### Data collection - ## Disabling data tracking - ## Wiping previously-stored data - ## Resuming data tracking - ## Apple's privacy manifest {#privacy-manifest} - ### What is tracking data? - ### What is a privacy manifest? - ### API tracking-data domains - ## Declaring Braze tracking data - ### Prerequisites - ### Step 1: Review your current policies - ### Step 2: Create a privacy manifest - ### Step 3: Add your endpoint to the privacy manifest - ### Step 4: Declare your tracking data - ### Step 5: Prevent infinite retry loops - ## Disabling data tracking - ## Wiping previously-stored data - ## Resuming data tracking - ## IDFV collection - ### Considerations - #### SDK Version - #### Downstream - ### Frequently asked questions - #### Will this change impact my existing users in Braze? - #### Can I turn this feature off after turning it on? - #### Can I still capture the IDFV value via Braze elsewhere? - ## Prerequisites - ## Disabling data tracking - ## Resuming data tracking - ## Wiping data - ## Flushing data - ## Setting ad-tracking enabled - ## Updating the tracking property allow list (iOS only) - ## Prerequisites - ## Wiping previously-stored data - ### Step 1: Clear the registry sections - ### Step 2: Re-initialize the Braze SDK - [À propos du serveur Braze MCP](/docs/fr/developer_guide/mcp_server/index.md): The locally hosted Braze MCP server (beta) is sunsetting this summer. It will continue to work, but we're no longer adding endpoints or supporting the beta. A remote, Braze-hosted MCP server is coming to Early Access this summer. - # The Braze MCP server - ## Sunsetting the locally hosted Braze MCP server - ## What is Model Context Protocol (MCP)? - ## About the Braze MCP server - ## Usage example - ## Frequently Asked Questions (FAQ) {#faq} - ### Which MCP clients are supported? - ### What Braze data can my MCP client access? - ### Can my MCP client change Braze data? - ### Can I use a third-party MCP server for Braze? - ### Why doesn't the Braze MCP server offer PII access? - ### Can I reuse my API keys? - ### Is the Braze MCP server hosted locally or remotely? - ### Why is Cursor only listing functions? - ### What do I do when the agent returns an answer that looks incorrect? - ## Disclaimer - [Configurer le serveur Braze MCP](/docs/fr/developer_guide/mcp_server/setup/index.md): The locally hosted Braze MCP server (beta) is sunsetting this summer. It will continue to work, but we're no longer adding endpoints or supporting the beta. A remote, Braze-hosted MCP server is coming to Early Access this summer. - # Setting up the Braze MCP server - ## Prerequisites - ## Setting up the Braze MCP server - ### Step 1: Install uv - ### Step 2: Create an API key {#create-api-key} - #### Campaigns - #### Canvas - #### Catalogs - #### Cloud Data Ingestion - #### Content Blocks - #### Custom Attributes - #### Events - #### KPIs - #### Media Library - #### Messages - #### Preference Center - #### Purchases - #### Segments - #### Sends - #### Sessions - #### SDK Authentication Keys - #### Subscription - #### Templates - ### Step 3: Get your identifier and endpoint - ### Step 4: Configure your MCP client {#configure-client} - ### Step 5: Send a test prompt - ## Troubleshooting - ### Terminal errors - #### uvx command not found - #### spawn uvx ENOENT error - #### Package installation fails - ### Client configuration - #### "This extension is not compatible with your device" - #### MCP client can't find the Braze server - #### Authentication errors - #### Connection timeouts or network errors - ## Disclaimer - [Veuillez utiliser le serveur Braze MCP.](/docs/fr/developer_guide/mcp_server/usage/index.md): The locally hosted Braze MCP server (beta) is sunsetting this summer. It will continue to work, but we're no longer adding endpoints or supporting the beta. A remote, Braze-hosted MCP server is coming to Early Access this summer. - # Using the Braze MCP server - ## Prerequisites - ## Best practices - ## Usage examples - ### What are my available Braze functions? - ### Get details about a Canvas ID - ### Show me my recent Canvases - ### Create an email template - ### Update a content block - ## Disclaimer - [Fonctions API disponibles dans le serveur Braze MCP](/docs/fr/developer_guide/mcp_server/available_api_functions/index.md): The locally hosted Braze MCP server (beta) is sunsetting this summer. It will continue to work, but we're no longer adding endpoints or supporting the beta. A remote, Braze-hosted MCP server is coming to Early Access this summer. - # Braze MCP server functions - ## Prerequisites - ## Available Braze API functions - ### General functions - ### Campaigns - ### Canvases - ### Catalogs - ### Cloud Data Ingestion - ### Content Blocks - ### Custom Attributes - ### Events - ### KPIs - ### Media Library - ### Messages - ### Preference Centers - ### Purchases - ### Segments - ### Sends - ### Sessions - ### SDK Authentication Keys - ### Subscription - ### Templates - ## Disclaimer - [Démarrer avec BrazeAI Decisioning Studio™](/docs/fr/developer_guide/decisioning_studio/index.md): BrazeAI Decisioning Studio™ replaces A/B testing with decisioning agents that personalize everything, and maximize any metric: drive dollars, not clicks—with Decisioning Studio, you can optimize any business metric. - # BrazeAI Decisioning Studio™ - ## What is BrazeAI Decisioning Studio™? - ## Key features - ## About Decisioning Studio - ### How it works - ### Decisioning Agents vs. BrazeAI Agents - ## Decisioning Studio Go vs. Decisioning Studio Pro - ### Decisioning Studio Go - ### Decisioning Studio Pro - ### About this guide - ## Next steps - [Intégrer BrazeAI Decisioning Studio™](/docs/fr/developer_guide/decisioning_studio/integration/index.md): While BrazeAI Decisioning Studio™ works best with Braze, a variety of other platforms are already supported. We'll continue updating our documentation so you'll have everything you need—even if you're not using Braze. - # Integrating BrazeAI Decisioning Studio™ - ## Prerequisites - ## Integrating decision studio - ### Step 1: Get your endpoint URL - ### Step 2: Create an API key - ### Step 3: Contact your BrazeAI Decisioning Studio™ customer success manager - [Créer des agents pour BrazeAI Decisioning Studio™](/docs/fr/developer_guide/decisioning_studio/building_agents/index.md): While BrazeAI Decisioning Studio™ works best with Braze, a variety of other platforms are already supported. We'll continue updating our documentation so you'll have everything you need—even if you're not using Braze. - # Building AI decisioning agents - ## About agents - ## Sample agents - ## Building an agent - ### Prerequisites - ### Step 1: Contact AI Expert Services - ### Step 2: Design your agent - ### Step 3: Set up your delivery platform - ### Step 4: Launch and monitor - [Envoi de messages à l'aide de la REST API](/docs/fr/developer_guide/rest_api/sending_messages/index.md): Cette approche est compatible avec tous les canaux de communication pris en charge par l'API (WhatsApp, e-mail, SMS, notifications push, Content Cards, webhooks, etc.). - # Envoi de messages à l'aide de la REST API {#sending-messages-using-the-rest-api} - ## Deux méthodes d'envoi {#two-ways-to-send} - ## Option 1 : Envoyer avec le contenu du message dans la requête (/messages/send) {#option-1-send-with-message-content-in-the-request-messagessend} - ### Exemple : modèle de message WhatsApp {#example-whatsapp-template-message} - ### Exemple : e-mail {#example-email} - ## Option 2 : Déclencher une Campaign avec du contenu dans le tableau de bord (/campaigns/trigger/send) {#option-2-trigger-a-campaign-with-content-in-the-dashboard-campaignstriggersend} - ### Étape 1 : Créer une Campaign déclenchée par API {#step-1-create-an-api-triggered-campaign} - ### Étape 2 : Déclencher la Campaign via l'API {#step-2-trigger-the-campaign-via-the-api} - ## Vérifier votre intégration {#verify-your-integration} - ## Considérations {#considerations} - [Envoi de messages SMS à l'aide de la REST API](/docs/fr/developer_guide/rest_api/sending_sms_messages/index.md): Cela peut s'avérer particulièrement utile pour l'envoi de messages transactionnels à haut volume dont le contenu est défini dans vos systèmes backend. Par exemple, vous pouvez informer les consommateurs lorsqu'ils reçoivent un message d'un autre utilisateur, en les invitant à visiter votre site web et à consulter leur boîte de réception. - # Envoi de messages SMS à l'aide de la REST API {#sending-sms-messages-using-the-rest-api} - ## Conditions préalables {#prerequisites} - ## Étape 1 : Créer une campagne API {#step-1-create-an-api-campaign} - ## Étape 2 : Envoyer un message SMS à l'aide de l'API {#step-2-send-an-sms-message-using-the-api} - ### Exemple de requête {#example-request} - ## Étape 3 : Vérifier votre intégration {#step-3-verify-your-integration} - ## Considérations {#considerations} - [Envoyer des e-mails via l'API REST](/docs/fr/developer_guide/rest_api/sending_email_messages/index.md): Cette méthode est particulièrement utile pour les messages transactionnels dont le contenu est défini dans vos systèmes backend. Par exemple, vous pouvez notifier vos utilisateurs lorsqu'ils reçoivent un message d'un autre utilisateur, en les invitant à visiter votre site web et à consulter leur boîte de réception. - # Envoyer des e-mails via l'API REST {#sending-email-messages-using-the-rest-api} - ## Conditions préalables {#prerequisites} - ## Étape 1 : Créer une campagne API {#step-1-create-an-api-campaign} - ## Étape 2 : Envoyer un e-mail via l'API {#step-2-send-an-email-using-the-api} - ### Exemple de requête {#example-request} - ## Étape 3 : Vérifier votre intégration {#step-3-verify-your-integration} - ## Points à prendre en compte {#considerations} - [Recommander des produits aux utilisateurs](/docs/fr/developer_guide/rest_api/recommending_products/index.md): Avec cette approche, vous pouvez : - # Recommander des produits aux utilisateurs {#recommending-products-to-users} - ## Conditions préalables {#prerequisites} - ## Étape 1 : Stocker les recommandations sur les profils utilisateur {#step-1-store-recommendations-on-user-profiles} - ### Exemple de requête {#example-request} - ## Étape 2 : Récupérer les métadonnées produit {#step-2-retrieve-product-metadata} - ### Option A : Catalogues Braze {#option-a-braze-catalogs} - #### Recommander un article spécifique du catalogue {#recommend-a-specific-catalog-item} - #### Recommander plusieurs articles du catalogue {#recommend-multiple-catalog-items} - #### Créer un modèle d'articles à partir de la recommandation d'un utilisateur {#template-items-using-a-users-recommendation} - ### Option B : Contenu connecté {#option-b-connected-content} - ## Étape 3 : Vérifier votre intégration {#step-3-verify-your-integration} - ## Points à prendre en compte {#considerations} - [Localisation](/docs/fr/developer_guide/localization/index.md): En plus de l'anglais, Braze prend en charge plusieurs langues pour les messages SDK affichés dans votre application. - # Localisation {#localization} - ## À propos de la localisation {#about-localization} - ## Supported language codes - [Géorepérages](/docs/fr/developer_guide/geofences/index.md): Before you can use this feature, you'll need to integrate the Android Braze SDK. - # Géorepérages {#geofences} - ## Prerequisites - ## Setting up geofences {#setting-up-geofences} - ### Step 1: Enable in Braze - ### Step 2: Update build.gradle - ### Step 3: Update the manifest - ### Step 4: Enable Braze location collection - ### Step 5: Obtain location permissions from the end user - ### Step 6: Manually request geofence updates (optional) - #### Step 6.1: Disable automatic geofence requests - #### Step 6.2: Manually request Braze geofence with GPS coordinate - ## Prerequisites - ## Setting up geofences {#setting-up-geofences} - ### Step 1: Enable in Braze - ### Step 2: Enable your app's location services - #### Step 2.1: Add the BrazeLocation module - #### Step 2.2: Update your Info.plist - ### Step 3: Enable geofences in your code - #### Step 3.1: Enable background reporting (optional) - ### Step 4: Request authorization {#request-authorization} - ## Manually request geofences {#manually-request-geofences} - ### Step 1: Set automaticGeofenceRequests to false - ### Step 2: Call requestGeofences manually - ## Frequently Asked Questions (FAQ) {#faq} - #### Why am I not receiving geofences on my device? - ##### iOS operating system limitations - ##### Rate limiting - #### How does it work if I am using both Braze and non-Braze geofence features? - #### Can the Geofences feature be used while a device is offline? - #### Why are geofences not monitored when my app is backgrounded/terminated? - ## Prerequisites - ## Prerequisites - ## Setting up geofences {#setting-up-geofences} - ### Step 1: Enable in Braze - ### Step 2: Add dependencies - ### Step 3: Update your AndroidManifest.xml - ### Step 4: Configure Braze location collection - ### Step 5: Request location permissions at runtime - ### Step 6: Manually request geofence updates (optional) - ### Step 2: Add dependencies - ### Step 3: Configure location usage in Info.plist - ### Step 4: Enable geofences in your Braze configuration - ### Step 5: Enable background location updates (optional) - ### Step 6: Request location authorization - ## Prerequisites - ## Setting up geofences {#setting-up-geofences} - ### Step 1: Enable in Braze - ### Step 2: Complete native Android setup - ### Step 3: Complete native iOS setup - ### Step 4: Request geofences from JavaScript - ### Step 5: Manually request geofences (optional) - [Stockage](/docs/fr/developer_guide/storage/index.md): Par défaut, Braze collecte les propriétés suivantes au niveau de l'appareil pour permettre la personnalisation des messages en fonction de l'appareil, de la langue et du fuseau horaire : - # Stockage {#storage} - ## Propriétés de l'appareil {#device-properties} - ## Stockage des cookies (web uniquement) {#cookies} - ### Modifier l'expiration des cookies {#cookie-expiry} - ### Désactiver les cookies {#disable-cookies} - [Paramètres réseau pour le SDK Braze](/docs/fr/developer_guide/network/index.md): Network offline mode is an optional feature that pauses or resumes outbound network requests from the Braze SDK at any point during runtime. Events are not lost during the offline state. This reference article covers how to integrate this mode. - # Paramètres du réseau {#network-settings} - ## Network offline mode - ## Network traffic control - ### Requesting processing policies - ### Manually flushing user data - ### Setting the request processing policy - [Références, dépôts et exemples d'applications du SDK Braze](/docs/fr/developer_guide/references/index.md): Pour le contenu des fichiers README des dépôts dans la documentation, consultez les guides des dépôts. - # Références, dépôts et exemples d'applications {#references-repositories-and-sample-apps} - ## Liste des ressources {#list-of-resources} - ## Créer un exemple d'application {#building-a-sample-app} - ### Créer « Droidboy » {#building-droidboy} - ### Créer « Hello Braze » {#building-hello-braze} - ### Créer des applications de test Swift {#building-swift-test-apps} - [Guides des dépôts](/docs/fr/developer_guide/sdk_repository_guides/index.md): Choisissez parmi les guides de dépôts suivants par plateforme : - # Guides des dépôts {#repository-guides} - ## Guides des dépôts disponibles {#available-repository-guides} - [Guide du dépôt du SDK Web](/docs/fr/developer_guide/sdk_repository_guides/web/index.md): - ## À propos du SDK Web de Braze {#about-the-braze-web-sdk} - ### Ce que vous pouvez faire {#what-you-can-do} - ## Conditions préalables {#prerequisites} - ### Obtenir vos identifiants {#getting-your-credentials} - ## Installation {#installation} - ## Démarrage rapide {#quick-start} - ## Référence de configuration {#configuration-reference} - ### Options d'initialisation {#initialization-options} - ## Fonctionnalités principales {#core-features} - ### Initialisation et configuration {#initialization-setup} - #### Initialisation de base {#basic-initialization} - #### Options d'initialisation avancées {#advanced-initialization-options} - ### Gestion des utilisateurs {#user-management} - #### Changer d'utilisateur {#change-user} - #### Définir les attributs utilisateur {#set-user-attributes} - #### Définir la localisation de l'utilisateur {#set-user-location} - #### Alias utilisateur et groupes d'abonnement {#user-aliases-and-subscription-groups} - #### Déconnexion de l'utilisateur {#user-logout} - ### In-App Messages - #### Affichage automatique {#automatic-display} - #### Affichage manuel {#manual-display} - #### Gestion personnalisée des messages in-app {#custom-in-app-message-handling} - #### Enregistrer les interactions avec les messages in-app {#log-in-app-message-interactions} - #### Messages in-app HTML personnalisés {#custom-html-in-app-messages} - ### Content Cards - #### Afficher les Content Cards {#display-content-cards} - #### S'abonner aux mises à jour des Content Cards {#subscribe-to-content-cards-updates} - #### Enregistrer les interactions avec les Content Cards {#log-content-card-interactions} - #### Filtrer les Content Cards {#filter-content-cards} - #### Demander l'actualisation des Content Cards {#request-content-cards-refresh} - #### Content Cards personnalisées {#custom-content-cards} - ### Notifications push {#push-notifications} - #### Demander l'autorisation de notification push {#request-push-permission} - #### Vérifier la prise en charge des notifications push {#check-push-support} - #### Désenregistrer les notifications push {#unregister-push} - ### Indicateurs de fonctionnalité {#feature-flags} - #### Obtenir un indicateur de fonctionnalité {#get-feature-flag} - #### S'abonner aux mises à jour des indicateurs de fonctionnalité {#subscribe-to-feature-flag-updates} - #### Enregistrer les impressions des indicateurs de fonctionnalité {#log-feature-flag-impressions} - #### Demander l'actualisation des indicateurs de fonctionnalité {#request-feature-flags-refresh} - ### Bannières {#banners} - #### Obtenir et afficher des bannières {#get-and-display-banners} - #### S'abonner aux mises à jour des bannières {#subscribe-to-banner-updates} - #### Demander l'actualisation des bannières {#request-banner-refresh} - ### Analytique et événements {#analytics-events} - #### Enregistrer des événements personnalisés {#log-custom-events} - #### Enregistrer des achats {#log-purchases} - #### Demander l'envoi immédiat des données {#request-data-flush} - ### Gestion des sessions {#session-management} - #### Ouvrir une session {#open-session} - #### Vérifier l'état du SDK {#check-sdk-status} - #### Activer/Désactiver le SDK {#enabledisable-sdk} - ### Gestion des données {#data-management} - #### Effacer les données {#wipe-data} - #### Détruire le SDK {#destroy-sdk} - #### Obtenir l'identifiant d'appareil {#get-device-id} - #### Authentification SDK {#sdk-authentication} - #### S'abonner aux échecs d'authentification {#subscribe-to-authentication-failures} - ## Modèles d'intégration {#integration-patterns} - ### Frameworks SSR {#ssr-frameworks} - ### Vite - ### Framework Jest {#jest-framework} - ### Asynchronous Module Definition (AMD) {#asynchronous-module-definition-amd} - #### Désactiver la prise en charge AMD {#disable-amd-support} - #### Chargeur de modules {#module-loader} - ### Pages mobiles accélérées (AMP) {#accelerated-mobile-pages-amp} - ### Electron - ### Intégration CDN {#cdn-integration} - ### Service worker (notifications push) {#service-worker-push-notifications} - ### Gestionnaires de balises {#tag-managers} - #### Tealium iQ - #### Autres gestionnaires de balises {#other-tag-managers} - ## Bibliothèques {#libraries} - ## Navigateurs pris en charge {#supported-browsers} - ## Débogage et résolution des problèmes {#debugging-troubleshooting} - ## Font Awesome - ## Ressources supplémentaires {#additional-resources} - ## Contact {#contact} - [Guide du dépôt du SDK Android](/docs/fr/developer_guide/sdk_repository_guides/android/index.md): - ## À propos du SDK Android de Braze {#about-the-braze-android-sdk} - ## Démarrage rapide {#quickstart} - ## Prise en charge des versions {#version-support} - ## Modules {#modules} - ## Contact {#contact} - [Guide du dépôt Swift SDK](/docs/fr/developer_guide/sdk_repository_guides/swift/index.md): - ## À propos du SDK Braze Swift {#about-the-braze-swift-sdk} - ## Démarrage rapide {#quickstart} - ## Versions prises en charge {#version-support} - ## Gestionnaires de paquets {#package-managers} - ## Bibliothèques {#libraries} - ## Exemples {#examples} - ## Dépôts alternatifs {#alternative-repositories} - ## Contact {#contact} - [Guide du dépôt du SDK JavaScript](/docs/fr/developer_guide/sdk_repository_guides/javascript/index.md): - ## À propos du SDK JavaScript de Braze {#about-the-braze-javascript-sdk} - ### Aperçu de l'architecture {#architecture-overview} - ## Démarrage rapide {#quickstart} - ## Conditions préalables {#prerequisites} - ### Obtenir vos identifiants {#getting-your-credentials} - ## Intégration {#integration} - ### Appeler l'API {#calling-the-api} - ### Concepts fondamentaux {#core-concepts} - #### Implémentations requises {#required-implementations} - #### Vidage des données {#data-flushing} - ### Modèles d'intégration {#integration-patterns} - #### Intégration de base {#basic-integration} - #### Implémentation de stockage personnalisée {#custom-storage-implementation} - #### Implémentation réseau personnalisée {#custom-network-implementation} - #### Gestion des erreurs {#error-handling} - #### Gestion des abonnements {#subscription-management} - ### Cas d'utilisation courants {#common-use-cases} - #### Identification des utilisateurs et suivi des attributs {#user-identification-and-attribute-tracking} - #### Journalisation des événements et analyse {#event-logging-and-analytics} - #### Gestion des messages in-app {#in-app-message-handling} - ### Gestion des erreurs et cas limites {#error-handling-edge-cases} - #### Conditions d'erreur courantes {#common-error-conditions} - ### Notes importantes sur l'implémentation {#important-implementation-notes} - ## Débogage et résolution des problèmes {#debugging-troubleshooting} - ## Contact {#contact} - [Guide du dépôt du SDK Cordova](/docs/fr/developer_guide/sdk_repository_guides/cordova/index.md): - ## À propos du SDK Braze Cordova {#about-the-braze-cordova-sdk} - ## Versions minimales requises {#minimum-version-requirements} - ## Installation du SDK {#installing-the-sdk} - ## Exécution de l'application exemple {#running-the-sample-application} - [Guide du dépôt du SDK Flutter](/docs/fr/developer_guide/sdk_repository_guides/flutter/index.md): - ## À propos du SDK Flutter Braze {#about-the-braze-flutter-sdk} - ## Démarrage rapide {#quickstart} - ### Android - ### iOS - ### Dart - ## Versions prises en charge {#version-support} - ## Exemple d'application {#sample-app} - ## Contact {#contact} - [Guide du dépôt du SDK React Native](/docs/fr/developer_guide/sdk_repository_guides/react_native/index.md): - ## À propos du SDK React Native de Braze - ### Ce que vous pouvez faire - ## Conditions préalables - ## Installation - ## Démarrage rapide - ## Configuration native - ### Android - ### iOS - ## Référence de configuration - ### Android (braze.xml) - ### iOS (Braze.Configuration) - ## API JavaScript / TypeScript - ## Fonctionnalités principales - ### Gestion des utilisateurs - ### Messages in-app - ### Content Cards - ### Bannières - ### Notifications push - ### Indicateurs de fonctionnalité - ### Analyses et achats - ### Gestion des données et état du SDK - ## Événements - ## Notes d'intégration - ## Compatibilité des versions - ## Plugin Braze Expo - ## Application exemple - ## Débogage et résolution des problèmes - ## Ressources supplémentaires - ## Contact - [Guide du dépôt du SDK Roku](/docs/fr/developer_guide/sdk_repository_guides/roku/index.md): - ## À propos du SDK Roku de Braze {#about-the-braze-roku-sdk} - ## Intégration initiale du SDK {#initial-sdk-integration} - ## Étape 1 : Ajouter des fichiers {#step-1-add-files} - ## Étape 2 : Ajouter des références {#step-2-add-references} - ## Étape 3 : Configurer {#step-3-configure} - ## Étape 4 : Initialiser Braze {#step-4-initialize-braze} - ## Configuration des messages in-app {#in-app-message-setup} - ## Intégration de base du SDK terminée {#basic-sdk-integration-complete} - ## Référence supplémentaire {#additional-reference} - [Guide du dépôt du SDK Unity](/docs/fr/developer_guide/sdk_repository_guides/unity/index.md): - ## À propos du SDK Unity Braze {#about-the-braze-unity-sdk} - ## Configuration du plugin {#plugin-setup} - ## Configuration de l'intégration {#integration-setup} - ## Contact {#contact} - [Guide du dépôt du SDK .NET MAUI (Xamarin)](/docs/fr/developer_guide/sdk_repository_guides/xamarin/index.md): - ## À propos du SDK .NET MAUI (Xamarin) de Braze {#about-the-braze-net-maui-xamarin-sdk} - ## Composants {#components} - ## Versionnement {#versioning} - ### Liaisons natives {#native-bindings} - ### Xamarin et Xamarin.Forms {#xamarin-xamarinforms} - ## Des questions ? {#questions} - [Journal des modifications](/docs/fr/developer_guide/changelogs/index.md): Vous pouvez également trouver une copie du journal des modifications du SDK Braze sur GitHub. - # Journaux de modifications SDK Braze - [Divulgations et qualifications](/docs/fr/developer_guide/disclosures/index.md) - [Divulgation des vulnérabilités de sécurité](/docs/fr/developer_guide/disclosures/security_and_vulnerability_disclosure/index.md):