Effectuer des achats dans une application mobile avec le SDK Android

Afficher des paywalls dans votre application mobile est une étape essentielle pour proposer aux utilisateurs l’accès à des contenus ou services premium. Cependant, l’affichage d’un paywall ne gère les achats de façon autonome que lorsqu’Adapty affiche l’écran lui-même — c’est-à-dire un flow, ou un paywall créé avec l’ancien Paywall Builder.

Si vous affichez l’écran dans votre propre code, vous devez utiliser une méthode distincte appelée .makePurchase() pour finaliser un achat et débloquer le contenu souhaité. Cette méthode est la passerelle permettant aux utilisateurs d’interagir avec les paywalls et de réaliser leurs transactions.

Si votre paywall propose une offre promotionnelle active pour le produit qu’un utilisateur souhaite acheter, Adapty l’appliquera automatiquement au moment de l’achat.

Warning

Gardez à l’esprit que l’offre de lancement ne sera appliquée automatiquement que si Adapty affiche l’écran.

Dans les autres cas, vous devrez vérifier l’éligibilité de l’utilisateur à une offre de lancement sur iOS. Ignorer cette étape peut entraîner le rejet de votre application lors de la publication. De plus, cela pourrait conduire à facturer le plein tarif à des utilisateurs éligibles à une offre de lancement.

Assurez-vous d’avoir effectué la configuration initiale sans sauter une seule étape. Sans elle, nous ne pouvons pas valider les achats.

Effectuer un achat

Note

Adapty affiche-t-il votre écran ? Pour un flow ou un paywall Paywall Builder, les achats sont traités automatiquement — vous pouvez ignorer cette étape.

Vous cherchez un guide pas à pas ? Consultez le guide de démarrage rapide pour des instructions complètes avec tout le contexte nécessaire.

Paramètres de la requête :

ParamètrePrésenceDescription
ProductrequisUn objet AdaptyPaywallProduct récupéré depuis le paywall.

Paramètres de la réponse :

ParamètreDescription
Profile

Si la requête a réussi, la réponse contient cet objet. Un objet AdaptyProfile fournit des informations complètes sur les niveaux d’accès, les abonnements et les achats uniques d’un utilisateur dans l’application.

Vérifiez le statut du niveau d’accès pour déterminer si l’utilisateur dispose de l’accès requis à l’application.

Warning

Remarque : si vous utilisez encore une version d’Apple StoreKit inférieure à v2.0 et une version du SDK Adapty inférieure à v2.9.0, vous devez fournir le secret partagé de l’App Store Apple à la place. Cette méthode est actuellement dépréciée par Apple.

Changer d’abonnement lors d’un achat

Lorsqu’un utilisateur choisit un nouvel abonnement plutôt que de renouveler l’abonnement en cours, le comportement dépend du store. Sur Google Play, l’abonnement n’est pas mis à jour automatiquement. Vous devez gérer ce changement dans le code de votre application mobile, comme décrit ci-dessous.

Pour remplacer un abonnement par un autre sur Android, appelez la méthode .makePurchase() avec le paramètre supplémentaire suivant :

Warning

Ne passez subscriptionUpdateParams que lorsque l’utilisateur passe d’un abonnement actif acheté sur le même compte Google. Pour un nouvel achat, appelez makePurchase sans ce paramètre — le passer entraîne l’échec de l’achat avec l’erreur CURRENT_SUBSCRIPTION_TO_UPDATE_NOT_FOUND_IN_HISTORY, dont le message induit en erreur en pointant vers un abonnement inactif ou un compte Google différent.

Vous pouvez en savoir plus sur les abonnements et les modes de remplacement dans la documentation Google Developer :

Gérer les abonnements prépayés

Si les utilisateurs de votre application peuvent acheter des abonnements prépayés (par exemple, souscrire un abonnement non renouvelable pour plusieurs mois), vous pouvez activer les transactions en attente pour ces abonnements.