Vérifier le statut d'abonnement dans le SDK iOS
Pour décider si les utilisateurs peuvent accéder au contenu payant ou voir un paywall, vous devez vérifier leur niveau d’accès dans le profil.
Cet article vous montre comment accéder à l’état du profil pour décider ce que les utilisateurs doivent voir — s’il faut leur afficher un paywall ou leur accorder l’accès aux fonctionnalités payantes.
Obtenir le statut d’abonnement
Lorsque vous décidez d’afficher un paywall ou du contenu payant à un utilisateur, vous vérifiez son niveau d’accès dans son profil. Deux options s’offrent à vous :
- Appelez
getProfilesi vous avez besoin des données de profil les plus récentes immédiatement (par exemple au lancement de l’application) ou si vous souhaitez forcer une mise à jour. - Configurez des mises à jour automatiques du profil pour conserver une copie locale qui se rafraîchit automatiquement dès que le statut d’abonnement change.
Par défaut, le niveau d’accès premium existe déjà dans Adapty. Si vous n’avez pas besoin de configurer plus d’un niveau d’accès, vous pouvez simplement utiliser premium.
Récupérer le profil
La façon la plus simple d’obtenir le statut d’abonnement est d’utiliser la méthode getProfile pour accéder au profil :
Écouter les mises à jour d’abonnement
Si vous souhaitez recevoir automatiquement les mises à jour du profil dans votre application :
- Conformez un type de votre choix au protocole
AdaptyDelegateet implémentez la méthodedidLoadLatestProfile— Adapty appellera automatiquement cette méthode dès que le statut d’abonnement de l’utilisateur change. Dans l’exemple ci-dessous, nous utilisons un typeSubscriptionManagerpour gérer les flux d’abonnement et le profil de l’utilisateur. Ce type peut être injecté en tant que dépendance ou configuré comme singleton dans une application UIKit, ou ajouté à l’environnement SwiftUI depuis la structure principale de l’application. - Stockez les données de profil mises à jour lorsque cette méthode est appelée, afin de pouvoir les utiliser dans toute votre application sans effectuer de requêtes réseau supplémentaires.
class SubscriptionManager: AdaptyDelegate {
nonisolated func didLoadLatestProfile(_ profile: AdaptyProfile) {
let hasAccess = profile.accessLevels["YOUR_ACCESS_LEVEL"]?.isActive ?? false
// Update UI, unlock content, etc.
}
}
// Set delegate after Adapty activation
Adapty.delegate = subscriptionManager
Adapty appelle automatiquement didLoadLatestProfile au démarrage de votre application, fournissant les données d’abonnement en cache même si l’appareil est hors ligne.
Connecter le profil à la logique des paywalls
Lorsque vous devez prendre des décisions immédiates concernant l’affichage de paywalls ou l’accès aux fonctionnalités payantes, vous pouvez vérifier directement le profil de l’utilisateur. Cette approche est utile dans des scénarios comme le lancement de l’application, l’accès à des sections premium, ou avant d’afficher un contenu spécifique.
Étapes suivantes
Maintenant que vous savez comment suivre le statut d’abonnement, découvrez comment travailler avec les profils utilisateurs pour vous assurer qu’il s’aligne avec votre système d’authentification existant et les autorisations de partage d’accès payant.
Si vous n’avez pas votre propre système d’authentification, ce n’est pas un problème, Adapty gérera les utilisateurs pour vous, mais vous pouvez quand même lire le guide pour comprendre comment Adapty fonctionne avec les utilisateurs anonymes.