Vérifier le statut d'abonnement dans le SDK React Native
Avec Adapty, suivre le statut d’abonnement est simple. Inutile d’insérer manuellement des identifiants de produit dans votre code : il vous suffit de vérifier si l’utilisateur dispose d’un niveau d’accès actif pour confirmer son statut d’abonnement.
Avant de vérifier le statut de l’abonnement (cliquez pour développer)
- Pour iOS, configurez les App Store Server Notifications
- Pour Android, configurez les Real-time Developer Notifications (RTDN)
Niveau d’accès et l’objet AdaptyProfile
Les niveaux d’accès sont des propriétés de l’objet AdaptyProfile. Nous vous recommandons de récupérer le profil au démarrage de votre application, par exemple lorsque vous identifiez un utilisateur, puis de le mettre à jour à chaque fois que des modifications surviennent. De cette façon, vous pouvez utiliser l’objet profil sans avoir à le redemander à chaque fois.
Pour être notifié des mises à jour de profil, écoutez les changements de profil comme décrit dans la section Écouter les mises à jour de profil, y compris les niveaux d’accès ci-dessous.
Vous souhaitez voir un exemple concret d’intégration du SDK Adapty dans une application mobile ? Découvrez nos applications exemples, qui illustrent la configuration complète, notamment l’affichage des paywalls, la réalisation d’achats et d’autres fonctionnalités de base.
Récupération du niveau d’accès depuis le serveur
Pour obtenir le niveau d’accès depuis le serveur, utilisez la méthode .getProfile() :
try {
const profile = await adapty.getProfile();
} catch (error) {
// handle the error
}
Paramètres de la réponse :
| Paramètre | Description |
|---|---|
| Profile | Un objet AdaptyProfile. En général, il vous suffit de vérifier le statut du niveau d’accès du profil pour déterminer si l’utilisateur bénéficie d’un accès premium à l’application. La méthode |
La méthode .getProfile() vous fournit le profil utilisateur à partir duquel vous pouvez obtenir le statut du niveau d’accès. Vous pouvez avoir plusieurs niveaux d’accès par application. Par exemple, si vous avez une application de presse et vendez des abonnements à différentes rubriques séparément, vous pouvez créer des niveaux d’accès « sports » et « science ». Mais la plupart du temps, un seul niveau d’accès suffit ; dans ce cas, vous pouvez simplement utiliser le niveau d’accès par défaut « premium ».
Voici un exemple de vérification du niveau d’accès par défaut « premium » :
try {
const profile = await adapty.getProfile();
const isActive = profile.accessLevels?.["premium"]?.isActive;
if (isActive) {
// grant access to premium features
}
} catch (error) {
// handle the error
}
Écouter les mises à jour du statut d’abonnement
Chaque fois que l’abonnement de l’utilisateur change, Adapty déclenche un événement.
Pour recevoir les messages d’Adapty, vous devez effectuer quelques configurations supplémentaires :
// Create an "onLatestProfileLoad" event listener
adapty.addEventListener('onLatestProfileLoad', profile => {
// handle any changes to subscription state
});
Adapty déclenche également un événement au démarrage de l’application. Dans ce cas, le statut d’abonnement mis en cache sera transmis.
Cache du statut d’abonnement
Le cache implémenté dans le SDK Adapty stocke le statut d’abonnement du profil. Cela signifie que même si le serveur est indisponible, les données mises en cache restent accessibles pour fournir des informations sur le statut d’abonnement du profil.
Cependant, il est important de noter qu’il n’est pas possible d’effectuer des requêtes de données directement depuis le cache. Le SDK interroge périodiquement le serveur toutes les minutes pour vérifier s’il y a des mises à jour ou des modifications liées au profil. Le cas échéant, par exemple de nouvelles transactions ou d’autres mises à jour, elles seront envoyées aux données en cache afin de les maintenir synchronisées avec le serveur.