Récupérer les onboardings et leur configuration

Warning

Les onboardings sont dépréciés à partir du SDK Adapty v4. Créez des flows à la place : contrairement aux onboardings, qui s’exécutent dans une WebView, les flows s’affichent nativement sur l’appareil — animations plus fluides, aspect natif cohérent, temps de chargement réduits et aucune dépendance à l’environnement WebView.

Après avoir conçu la partie visuelle de votre onboarding avec le builder dans l’Adapty Dashboard, vous pouvez l’afficher dans votre application mobile. La première étape consiste à récupérer l’onboarding associé au placement ainsi que sa configuration d’affichage, comme décrit ci-dessous.

Avant de commencer, assurez-vous que :

  1. Vous avez installé le SDK Adapty iOS, Android, React Native ou Flutter version 3.8.0 ou supérieure.
  2. Vous avez créé un onboarding.
  3. Vous avez ajouté l’onboarding à un placement.

Récupérer l’onboarding

Lorsque vous créez un onboarding avec notre éditeur no-code, il est stocké sous forme de conteneur avec une configuration que votre application doit récupérer et afficher. Ce conteneur gère l’ensemble de l’expérience : le contenu affiché, la façon dont il est présenté, et la manière dont les interactions utilisateur (comme les réponses aux quiz ou les saisies de formulaires) sont traitées. Le conteneur suit également automatiquement les événements analytiques, vous n’avez donc pas besoin d’implémenter un suivi des vues séparé.

Pour de meilleures performances, récupérez la configuration de l’onboarding tôt afin de laisser suffisamment de temps aux images pour se télécharger avant de les afficher aux utilisateurs.

Pour obtenir un onboarding, utilisez la méthode getOnboarding :

do {
    let onboarding = try await Adapty.getOnboarding(placementId: "YOUR_PLACEMENT_ID")
    // the requested onboarding
} catch {
    // handle the error
}

Paramètres :

ParamètrePrésenceDescription
placementIdrequisL’identifiant du Placement souhaité. C’est la valeur que vous avez spécifiée lors de la création d’un placement dans l’Adapty Dashboard.
locale

optionnel

par défaut : en

L’identifiant de la localisation de l’onboarding. Ce paramètre doit être un code de langue composé d’un ou deux sous-tags séparés par le caractère moins (-). Le premier sous-tag désigne la langue, le second la région.

Exemple : en désigne l’anglais, pt-br représente le portugais brésilien.

Consultez Localisations et codes de langue pour en savoir plus sur les codes de langue et notre façon de les utiliser.

fetchPolicypar défaut : .reloadRevalidatingCacheData

Par défaut, le SDK tente de charger les données depuis le serveur et renvoie les données mises en cache en cas d’échec. Nous recommandons cette option car elle garantit que vos utilisateurs obtiennent toujours les données les plus récentes.

Cependant, si vos utilisateurs ont une connexion internet instable, envisagez d’utiliser .returnCacheDataElseLoad pour renvoyer les données en cache si elles existent. Dans ce cas, les utilisateurs n’auront peut-être pas les toutes dernières données, mais les temps de chargement seront plus rapides, quelle que soit la qualité de leur connexion. Le cache est mis à jour régulièrement, il est donc sûr de l’utiliser en cours de session pour éviter des requêtes réseau.

Notez que le cache reste intact après un redémarrage de l’application et n’est effacé qu’à la réinstallation de l’application ou via un nettoyage manuel.

Le SDK Adapty stocke les onboardings localement sur deux couches : le cache régulièrement mis à jour décrit ci-dessus et les onboardings de secours. Nous utilisons également un CDN pour récupérer les onboardings plus rapidement, ainsi qu’un serveur de secours indépendant si le CDN est inaccessible. Ce système est conçu pour vous garantir toujours la dernière version de vos onboardings, tout en assurant la fiabilité même lorsque la connexion internet est limitée.

loadTimeoutpar défaut : 5 sec

Cette valeur limite le délai d’attente de cette méthode. Si le délai est dépassé, les données en cache ou le fallback local sont renvoyés.

Notez que dans de rares cas, cette méthode peut expirer légèrement après le délai spécifié dans loadTimeout, car l’opération peut reposer sur plusieurs requêtes en coulisses.

Paramètres de réponse :

ParamètreDescription
OnboardingUn objet AdaptyOnboarding contenant : l’identifiant et la configuration de l’onboarding, le Remote Config, ainsi que plusieurs autres propriétés.

Accélérer la récupération de l’onboarding avec l’onboarding de l’audience par défaut

En général, les onboardings sont récupérés presque instantanément, vous n’avez donc pas à vous inquiéter d’accélérer ce processus. Cependant, si vous avez de nombreuses audiences et onboardings, et que vos utilisateurs ont une connexion internet faible, la récupération d’un onboarding peut prendre plus de temps que souhaité. Dans ce cas, vous pourriez vouloir afficher un onboarding par défaut pour garantir une expérience utilisateur fluide plutôt que de n’afficher aucun onboarding.

Pour y remédier, vous pouvez utiliser la méthode getOnboardingForDefaultAudience, qui récupère l’onboarding du placement spécifié pour l’audience All Users. Il est toutefois essentiel de comprendre que l’approche recommandée consiste à récupérer l’onboarding via la méthode getOnboarding, comme décrit dans la section Récupérer l’onboarding ci-dessus.

Warning

Préférez getOnboarding à getOnboardingForDefaultAudience, car cette dernière présente des limitations importantes :

  • Problèmes de compatibilité : Peut créer des problèmes lors de la prise en charge de plusieurs versions de l’application, nécessitant soit des designs rétrocompatibles, soit d’accepter que les versions plus anciennes s’affichent incorrectement.
  • Pas de personnalisation : Affiche uniquement le contenu pour l’audience « Tous les utilisateurs », sans ciblage basé sur le pays, l’attribution ou les attributs personnalisés.

Si la rapidité de récupération compense ces inconvénients pour votre cas d’usage, utilisez getOnboardingForDefaultAudience comme indiqué ci-dessous. Sinon, utilisez getOnboarding comme décrit ci-dessus.

Adapty.getOnboardingForDefaultAudience(placementId: "YOUR_PLACEMENT_ID") { result in
    switch result {
        case let .success(onboarding):
            // the requested onboarding
        case let .failure(error):
            // handle the error
    }
}

Paramètres :

ParamètrePrésenceDescription
placementIdrequisL’identifiant du Placement souhaité. C’est la valeur que vous avez indiquée lors de la création d’un placement dans l’Adapty Dashboard.
locale

optionnel

par défaut : en

L’identifiant de la localisation de l’onboarding. Ce paramètre doit être un code de langue composé d’un ou deux sous-tags séparés par le caractère moins (-). Le premier sous-tag correspond à la langue, le second à la région.

Exemple : en désigne l’anglais, pt-br représente le portugais brésilien.

Consultez Localisations et codes de langue pour plus d’informations sur les codes de langue et notre façon de les utiliser.

fetchPolicypar défaut : .reloadRevalidatingCacheData

Par défaut, le SDK tente de charger les données depuis le serveur et renvoie les données en cache en cas d’échec. Nous recommandons cette option, car elle garantit que vos utilisateurs reçoivent toujours les données les plus récentes.

Cependant, si vous pensez que vos utilisateurs ont une connexion internet instable, envisagez d’utiliser .returnCacheDataElseLoad pour renvoyer les données en cache si elles existent. Dans ce cas, les utilisateurs n’obtiennent pas forcément les toutes dernières données, mais les temps de chargement sont plus rapides, quelle que soit la qualité de leur connexion. Le cache est mis à jour régulièrement, ce qui permet de l’utiliser sans risque pendant la session pour éviter les requêtes réseau.

Notez que le cache est conservé lors du redémarrage de l’application et n’est effacé qu’en cas de réinstallation ou de nettoyage manuel.

Le SDK Adapty stocke les onboardings localement sur deux couches : le cache mis à jour régulièrement décrit ci-dessus et les onboardings de secours. Nous utilisons également un CDN pour récupérer les onboardings plus rapidement, ainsi qu’un serveur de secours indépendant en cas d’indisponibilité du CDN. Ce système est conçu pour vous garantir en permanence la dernière version de vos onboardings, tout en assurant une fiabilité même lorsque la connexion internet est limitée.