Présenter les onboardings dans le SDK Kotlin Multiplatform
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.
Si vous avez personnalisé un onboarding avec le builder, vous n’avez pas besoin de gérer son rendu dans votre code d’application Kotlin Multiplatform pour l’afficher à l’utilisateur. Un tel onboarding contient à la fois ce qui doit être affiché et comment il doit être affiché.
Avant de commencer, assurez-vous que :
- Vous avez installé le SDK Adapty Kotlin Multiplatform 3.16.1 ou une version ultérieure.
- Vous avez créé un onboarding.
- Vous avez ajouté l’onboarding à un placement.
Adapty Kotlin Multiplatform SDK propose deux façons de présenter les onboardings :
- Avec Compose Multiplatform
- Sans Compose Multiplatform
Avec Compose Multiplatform
Pour afficher un onboarding, utilisez la méthode view.present() sur la view créée par la méthode createOnboardingView. Chaque view ne peut être utilisée qu’une seule fois. Si vous devez afficher à nouveau l’onboarding, appelez createOnboardingView une nouvelle fois pour créer une nouvelle instance de view.
Réutiliser la même view sans la recréer peut entraîner une erreur.
viewModelScope.launch {
AdaptyUI.createOnboardingView(onboarding = onboarding).onSuccess { view ->
view.present()
}.onError { error ->
// handle the error
}
}
Configurer le style de présentation iOS
Configurez la façon dont l’onboarding est présenté sur iOS en passant le paramètre iosPresentationStyle à la méthode present(). Ce paramètre accepte les valeurs AdaptyUIIOSPresentationStyle.FULLSCREEN (par défaut) ou AdaptyUIIOSPresentationStyle.PAGESHEET.
viewModelScope.launch {
val view = AdaptyUI.createOnboardingView(onboarding = onboarding).getOrNull()
view?.present(iosPresentationStyle = AdaptyUIIOSPresentationStyle.PAGESHEET)
}
Personnaliser l’ouverture des liens dans les onboardings
Par défaut, les liens dans les onboardings s’ouvrent dans un navigateur intégré à l’application. Cela offre une expérience fluide en affichant les pages web directement dans votre application, sans que l’utilisateur ait à changer d’app.
Si vous préférez ouvrir les liens dans un navigateur externe, vous pouvez personnaliser ce comportement en définissant le paramètre externalUrlsPresentation sur AdaptyWebPresentation.EXTERNAL_BROWSER :
viewModelScope.launch {
AdaptyUI.createOnboardingView(
onboarding = onboarding,
externalUrlsPresentation = AdaptyWebPresentation.EXTERNAL_BROWSER // default – IN_APP_BROWSER
).onSuccess { view ->
view.present()
}.onError { error ->
// handle the error
}
}
Sans Compose Multiplatform
createNativeOnboardingView fait partie du module principal io.adapty:adapty-kmp. Si votre projet n’utilise pas Compose Multiplatform, vous n’avez pas besoin de la dépendance io.adapty:adapty-kmp-ui.
Pour intégrer un onboarding sans Compose Multiplatform, appelez createNativeOnboardingView. Cette méthode retourne un AdaptyNativeOnboardingView que vous ajoutez à votre layout :
Supprimer la vue
Appelez dispose() lorsque vous supprimez la vue de votre mise en page. Cela désenregistre le listener d’événements et libère les ressources internes.
nativeView.dispose()