---
title: "Optimiser la récupération des paywalls dans le SDK Kotlin Multiplatform"
description: "Récupérez les paywalls Adapty de manière fiable : timing, mise en cache et patterns de secours pour Kotlin Multiplatform."
---

Une récupération fiable de paywall sur Kotlin Multiplatform repose sur trois points : un affichage rapide, le retour du paywall ciblé par audience, et un repli gracieux en cas de réseau lent. Les règles ci-dessous couvrent le timing, la mise en cache et les patterns de secours pour y parvenir.

:::tip
Ces règles supposent que `Adapty.activate()` et `Adapty.identify()` ont déjà été résolus. Voir [Ordre d'appel dans le SDK Kotlin Multiplatform](kmp-sdk-call-order).
:::

Les conseils ci-dessous utilisent les noms de méthodes de la v3. Dans le SDK v4, `getPaywall` est renommé en `getFlow` (voir le [guide de migration](migration-to-kmp-sdk-v4)) — chaque règle s'applique sans changement.

## Règles et pièges \{#rules-and-pitfalls\}

| À faire | À éviter | Pourquoi |
|---|---|---|
| Récupérez le placement que vous êtes sur le point d'afficher.                                                                                                                | Pré-charger tous les placements simultanément au démarrage.        | Le pré-chargement en masse bloque le thread principal et provoque un écran noir pendant la rafale.                                  |
| Appelez `getPaywall` une fois que l'attribution a eu le temps de se résoudre — par exemple, 1 à 2 secondes après `activate` ou après le déclenchement de `setOnProfileUpdatedListener`. | Appeler `getPaywall` au démarrage de l'application.                       | L'attribution n'est pas encore arrivée. Le paywall se résout sur l'audience par défaut et contourne silencieusement les segments et la personnalisation ASA. |
| Définissez un `loadTimeout` et configurez un [paywall de secours](fallback-paywalls) pour chaque placement.                                                           | Attendre indéfiniment sur `getPaywall`.                     | Sans délai d'expiration, les utilisateurs avec une mauvaise connectivité voient un écran blanc jusqu'à ce que le réseau réponde — ou ferment l'application.     |

Voir [Récupérer les paywalls et les produits](fetch-paywalls-and-products-kmp) pour la référence des paramètres `fetchPolicy` et `loadTimeout`, et [Placements](placements) pour choisir le bon placement.

## Optimiser pour une mauvaise connectivité \{#tune-for-poor-connectivity\}

Pour les marchés avec une connectivité constamment faible (zones rurales, transports, régions affectées par le routage) :

- Définissez `fetchPolicy = AdaptyPaywallFetchPolicy.ReturnCacheDataElseLoad` sur chaque récupération sauf la toute première.
- Configurez un [paywall de secours](fallback-paywalls) pour chaque placement dans l'Adapty Dashboard.
- Définissez `loadTimeout` entre 3 et 5 secondes et acceptez le paywall de secours lorsque le délai expire.
- Ne conditionnez pas l'affichage du paywall à `Adapty.getProfile()`. Appelez `getPaywall` indépendamment pour qu'un profil lent ne bloque pas l'interface.