Guide de migration vers Flutter Adapty SDK 3.10.0
Adapty SDK 3.10.0 est une version majeure qui apporte des améliorations nécessitant toutefois quelques étapes de migration de votre part :
- Mettre à jour la méthode
makePurchasepour utiliserAdaptyPurchaseParametersà la place des paramètres individuels. - Remplacer
vendorProductIdsparproductIdentifiersdans le modèleAdaptyPaywall.
Mettre à jour la méthode makePurchase
La méthode makePurchase utilise désormais AdaptyPurchaseParameters à la place des arguments individuels subscriptionUpdateParams et isOfferPersonalized. Cela offre une meilleure sécurité des types et permet d’étendre les paramètres d’achat à l’avenir.
- final purchaseResult = await adapty.makePurchase(
- product: product,
- subscriptionUpdateParams: subscriptionUpdateParams,
- isOfferPersonalized: true,
- );
+ final parameters = AdaptyPurchaseParametersBuilder()
+ ..setSubscriptionUpdateParams(subscriptionUpdateParams)
+ ..setIsOfferPersonalized(true)
+ ..setObfuscatedAccountId('your-account-id')
+ ..setObfuscatedProfileId('your-profile-id');
+ final purchaseResult = await adapty.makePurchase(
+ product: product,
+ parameters: parameters.build(),
+ );
Si aucun paramètre supplémentaire n’est nécessaire, vous pouvez simplement utiliser :
final purchaseResult = await adapty.makePurchase(
product: product,
);
Mettre à jour l’utilisation du modèle AdaptyPaywall
La propriété vendorProductIds a été dépréciée au profit de productIdentifiers. La nouvelle propriété retourne des objets AdaptyProductIdentifier au lieu de simples chaînes de caractères, offrant une structure d’informations produit plus cohérente.
- paywall.vendorProductIds.map((vendorId) =>
- ListTextTile(title: vendorId)
- ).toList()
+ paywall.productIdentifiers.map((productId) =>
+ ListTextTile(title: productId.vendorProductId)
+ ).toList()
L’objet AdaptyProductIdentifier donne accès à l’identifiant de produit du vendor via la propriété vendorProductId, conservant ainsi la même fonctionnalité tout en offrant une meilleure structure pour les évolutions futures.
Compatibilité ascendante
Les deux modifications maintiennent la compatibilité ascendante :
- Les anciens paramètres de
makePurchasesont dépréciés mais restent fonctionnels - La propriété
vendorProductIdsest dépréciée mais reste accessible - Le code existant continuera de fonctionner, même si des avertissements de dépréciation apparaîtront
Nous vous recommandons de mettre à jour votre code pour utiliser les nouvelles API afin de garantir la compatibilité future et de profiter de la meilleure sécurité des types et extensibilité offertes.