Verificar el estado de la suscripción en el SDK de Flutter
Con Adapty, hacer seguimiento del estado de la suscripción es muy sencillo. No tienes que insertar manualmente los IDs de producto en tu código. En su lugar, puedes confirmar el estado de suscripción de un usuario fácilmente comprobando si tiene un nivel de acceso activo.
Antes de empezar a comprobar el estado de la suscripción (haz clic para expandir)
- Para iOS, configura las notificaciones del servidor de App Store
- Para Android, configura las notificaciones en tiempo real para desarrolladores (RTDN)
Nivel de acceso y el objeto AdaptyProfile
Los niveles de acceso son propiedades del objeto AdaptyProfile. Te recomendamos obtener el perfil cuando se inicie tu app, por ejemplo al identificar un usuario, y actualizarlo cada vez que se produzcan cambios. Así podrás usar el objeto de perfil sin tener que solicitarlo repetidamente. Para recibir notificaciones sobre actualizaciones del perfil, escucha los cambios del perfil tal como se describe en la sección Escuchar actualizaciones del perfil, incluidos los niveles de acceso a continuación.
¿Quieres ver un ejemplo real de cómo se integra el SDK de Adapty en una app móvil? Echa un vistazo a nuestras apps de ejemplo, que muestran la configuración completa, incluyendo la visualización de paywalls, la realización de compras y otras funcionalidades básicas.
Recuperar el nivel de acceso desde el servidor
Para obtener el nivel de acceso desde el servidor, usa el método .getProfile():
try {
final profile = await Adapty().getProfile();
// check the access
} on AdaptyError catch (adaptyError) {
// handle the error
} catch (e) {
}
Parámetros de respuesta:
| Parámetro | Descripción |
|---|---|
| Profile | Un objeto AdaptyProfile. En general, solo tienes que comprobar el estado del nivel de acceso del perfil para determinar si el usuario tiene acceso premium a la app. El método |
El método .getProfile() te proporciona el perfil del usuario a partir del cual puedes obtener el estado del nivel de acceso. Puedes tener múltiples niveles de acceso por app. Por ejemplo, si tienes una app de noticias y vendes suscripciones a diferentes temáticas de forma independiente, puedes crear niveles de acceso “sports” y “science”. Pero en la mayoría de los casos solo necesitarás un nivel de acceso; en ese caso, puedes usar simplemente el nivel de acceso predeterminado “premium”. |
A continuación se muestra un ejemplo para verificar el nivel de acceso predeterminado “premium”:
try {
final profile = await Adapty().getProfile();
if (profile?.accessLevels['premium']?.isActive ?? false) {
// grant access to premium features
}
} on AdaptyError catch (adaptyError) {
// handle the error
} catch (e) {
}
Escuchar actualizaciones del estado de suscripción
Cada vez que cambia la suscripción del usuario, Adapty lanza un evento.
Para recibir mensajes de Adapty, necesitas realizar una configuración adicional:
Adapty().didUpdateProfileStream.listen((profile) {
// handle any changes to subscription state
});
Adapty también lanza un evento al iniciar la aplicación. En ese caso, se pasará el estado de suscripción almacenado en caché.
Caché del estado de suscripción
La caché implementada en el SDK de Adapty almacena el estado de suscripción del perfil. Esto significa que, aunque el servidor no esté disponible, se puede acceder a los datos en caché para obtener información sobre el estado de suscripción del perfil. Sin embargo, es importante tener en cuenta que no es posible realizar solicitudes de datos directamente desde la caché. El SDK consulta el servidor periódicamente cada minuto para comprobar si hay actualizaciones o cambios relacionados con el perfil. Si hay modificaciones, como nuevas transacciones u otras actualizaciones, se enviarán a los datos en caché para mantenerlos sincronizados con el servidor.