Migrar el SDK de Flutter de Adapty a v3.0

Adapty SDK v3.0 trae soporte para el nuevo y emocionante Adapty Paywall Builder, la nueva versión de la herramienta no-code y fácil de usar para crear paywalls. Con su máxima flexibilidad y ricas capacidades de diseño, tus paywalls serán más efectivos y rentables.

Ten en cuenta que la librería AdaptyUI está obsoleta y ahora forma parte de AdaptySDK.

Eliminar el SDK de AdaptyUI

  1. AdaptyUI pasa a ser un módulo dentro del SDK de Adapty, así que elimina adapty_ui_flutter de tu archivo pubspec.yaml:

    dependencies:
    + adapty_flutter: ^3.2.1
    - adapty_flutter: ^2.10.3
    - adapty_ui_flutter: ^2.1.3
  2. Ejecuta:

    flutter pub get

Configurar los SDK de Adapty

Antes era necesario usar los archivos Adapty-Info.plist y AndroidManifest.xml para configurar el SDK de Adapty.

Ahora ya no es necesario usar archivos adicionales. En su lugar, puedes proporcionar todos los parámetros requeridos durante la activación.

Solo tienes que configurar el SDK de Adapty una vez, normalmente al inicio del ciclo de vida de tu app.

Activar el módulo Adapty del SDK

  1. Elimina la importación del SDK AdaptyUI de tu aplicación de la siguiente manera:

    import 'package:adapty_flutter/adapty_flutter.dart';
    - import 'package:adapty_ui_flutter/adapty_ui_flutter.dart';
  2. Actualiza la activación del SDK de Adapty así:

   try {
   -	Adapty().activate();  
   +    await Adapty().activate(
   +        configuration: AdaptyConfiguration(apiKey: 'YOUR_API_KEY')
   +         ..withLogLevel(AdaptyLogLevel.debug)
   +         ..withObserverMode(false)
   +         ..withCustomerUserId(null)
   +         ..withIpAddressCollectionDisabled(false)
   +         ..withIdfaCollectionDisabled(false),
   +   );
   } catch (e) {
       // handle the error
   }

Parámetros:

ParámetroPresenciaDescripción
PUBLIC_SDK_KEYobligatorioLa clave que puedes encontrar en el campo Public SDK key de la configuración de tu app en Adapty: App settings-> pestaña General -> subsección API keys
withLogLevelopcionalAdapty registra errores y otra información esencial para darte visibilidad sobre el funcionamiento de tu app. Los niveles disponibles son:
  • error: Solo se registran los errores.
  • warn: Se registran los errores y los mensajes del SDK que no causan errores críticos, pero que conviene tener en cuenta.
  • info: Se registran los errores, advertencias y mensajes informativos relevantes, como los que registran el ciclo de vida de los distintos módulos.
  • verbose: Se registra cualquier información adicional que pueda ser útil durante la depuración, como llamadas a funciones, consultas a la API, etc.
withObserverModeopcional

Un valor booleano que controla el modo Observer. Actívalo si gestionas las compras y el estado de las suscripciones por tu cuenta y usas Adapty solo para enviar eventos de suscripción y analíticas.

El valor por defecto es false.

🚧 Al ejecutarse en modo Observer, el SDK de Adapty no cerrará ninguna transacción, así que asegúrate de gestionarlas tú mismo.

withCustomerUserIdopcionalUn identificador del usuario en tu sistema. Lo enviamos en los eventos de suscripción y analítica para atribuir los eventos al perfil correcto. También puedes buscar clientes por customerUserId en el menú Profiles and Segments.
withIdfaCollectionDisabledopcional

Establécelo en true para deshabilitar la recopilación y el uso compartido del IDFA.

el uso compartido de la dirección IP del usuario.

El valor por defecto es false.

Para más detalles sobre la recopilación del IDFA, consulta la sección Integración de analíticas.

withIpAddressCollectionDisabledopcional

Establécelo en true para deshabilitar la recopilación y el uso compartido de la dirección IP del usuario.

El valor por defecto es false.

Activar el módulo AdaptyUI del SDK de Adapty

Solo necesitas configurar el módulo AdaptyUI si tienes pensado usar el Paywall Builder:

try {
    final mediaCache = AdaptyUIMediaCacheConfiguration(
        memoryStorageTotalCostLimit: 100 * 1024 * 1024, // 100MB
        memoryStorageCountLimit: 2147483647, // 2^31 - 1, max int value in Dart
        diskStorageSizeLimit: 100 * 1024 * 1024, // 100MB
    );

    await AdaptyUI().activate(
        configuration: AdaptyUIConfiguration(mediaCache: mediaCache),
        observer: <AdaptyUIObserver Implementation>,
    );
} catch (e) {
    // handle the error
}

Ten en cuenta que la configuración de AdaptyUI es opcional: puedes activar el módulo AdaptyUI sin su configuración. Sin embargo, si usas la configuración, todos los parámetros son obligatorios.

Parámetros:

ParámetroPresenciaDescripción
memoryStorageTotalCostLimitrequeridoLímite de coste total del almacenamiento en bytes.
memoryStorageCountLimitrequeridoLímite de cantidad de elementos en el almacenamiento en memoria.
diskStorageSizeLimitrequeridoLímite de tamaño de archivo en disco del almacenamiento en bytes. 0 significa sin límite.