Guía de migración al SDK de Adapty para Android 3.10.0

El SDK de Adapty 3.10.0 es una versión mayor que introduce mejoras que pueden requerir algunos pasos de migración de tu parte:

  1. AdaptyUiPersonalizedOfferResolver ha sido eliminado. Si lo estás usando, pásalo en el callback onAwaitingPurchaseParams.
  2. Actualiza la firma del método onAwaitingSubscriptionUpdateParams para los paywalls del Paywall Builder.

Actualizar el callback de parámetros de compra

El método onAwaitingSubscriptionUpdateParams ha sido renombrado a onAwaitingPurchaseParams y ahora usa AdaptyPurchaseParameters en lugar de AdaptySubscriptionUpdateParameters. Esto te permite especificar parámetros de reemplazo de suscripción (crossgrade) e indicar si el precio es personalizado (más información), junto con otros parámetros de compra.

- 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 no se necesitan parámetros adicionales, puedes usar simplemente:

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