---
title: "Guide de migration vers Android Adapty SDK 3.10.0"
description: ""
---

Adapty SDK 3.10.0 est une version majeure qui apporte des améliorations nécessitant toutefois quelques étapes de migration de votre part :

1. `AdaptyUiPersonalizedOfferResolver` a été supprimé. Si vous l'utilisiez, passez-le dans le callback `onAwaitingPurchaseParams`.
2. Mettez à jour la signature de la méthode `onAwaitingSubscriptionUpdateParams` pour les paywalls du Paywall Builder.

## Mettre à jour le callback des paramètres d'achat \{#update-purchase-parameters-callback\}

La méthode `onAwaitingSubscriptionUpdateParams` a été renommée en `onAwaitingPurchaseParams` et utilise désormais `AdaptyPurchaseParameters` à la place de `AdaptySubscriptionUpdateParameters`. Cela vous permet de spécifier des paramètres de remplacement d'abonnement (crossgrade) et d'indiquer si le prix est personnalisé ([en savoir plus](https://developer.android.com/google/play/billing/integrate#personalized-price)), ainsi que d'autres paramètres d'achat.

```diff showLineNumbers
- override fun onAwaitingSubscriptionUpdateParams(
-     product: AdaptyPaywallProduct,
-     context: Context,
-     onSubscriptionUpdateParamsReceived: SubscriptionUpdateParamsCallback,
- ) {
-     onSubscriptionUpdateParamsReceived(AdaptySubscriptionUpdateParameters(...))
- }

+ override fun onAwaitingPurchaseParams(
+     product: AdaptyPaywallProduct,
+     context: Context,
+     onPurchaseParamsReceived: AdaptyUiEventListener.PurchaseParamsCallback,
+ ): AdaptyUiEventListener.PurchaseParamsCallback.IveBeenInvoked {
+     onPurchaseParamsReceived(
+         AdaptyPurchaseParameters.Builder()
+             .withSubscriptionUpdateParams(AdaptySubscriptionUpdateParameters(...)) 
+             .withOfferPersonalized(true) 
+             .build()
+     )
+     return AdaptyUiEventListener.PurchaseParamsCallback.IveBeenInvoked
+ }
```

Si aucun paramètre supplémentaire n'est nécessaire, vous pouvez simplement utiliser :

```kotlin showLineNumbers
+ override fun onAwaitingPurchaseParams(
    product: AdaptyPaywallProduct,
    context: Context,
    onPurchaseParamsReceived: AdaptyUiEventListener.PurchaseParamsCallback,
): AdaptyUiEventListener.PurchaseParamsCallback.IveBeenInvoked {
    onPurchaseParamsReceived(AdaptyPurchaseParameters.Empty)
    return AdaptyUiEventListener.PurchaseParamsCallback.IveBeenInvoked
}
```