Ce document explique comment passer de la bibliothèque Google Play Billing (PBL) 6 ou 7 à la PBL 8, et comment intégrer les nouvelles fonctionnalités d'abonnement facultatives.
Pour obtenir la liste complète des modifications apportées à la version 8.0.0, consultez les notes de version.
Compétences Android
Afficher sur GitHubMettre à niveau la bibliothèque Play Billing
android skills add play-billing-library-version-upgradeHelp me upgrade my Play Billing Library implementation.Présentation
PBL 8 inclut des améliorations apportées aux API existantes, ainsi que la suppression des API précédemment obsolètes. Cette version de la bibliothèque inclut également de nouvelles API pour les produits ponctuels.
Rétrocompatibilité pour la mise à niveau de la bibliothèque Play Billing
Pour migrer vers PBL 8, vous devez mettre à jour ou supprimer certaines de vos références d'API existantes de votre application, comme décrit dans les notes de version et plus loin dans ce guide de migration.
Passer de la PBL 6 ou 7 à la PBL 8
Pour passer de PBL 6 ou 7 à PBL 8, procédez comme suit :
Mettez à jour la version de la dépendance de la bibliothèque Play Billing dans le fichier
build.gradlede votre application.dependencies { def billingVersion = 8.0.0 implementation "com.android.billingclient:billing:$billingVersion" }(Applicable uniquement pour la mise à niveau de PBL 6 vers PBL 8). Gérez les modifications d'API liées aux abonnements dans votre application.
Le tableau suivant liste les API liées aux abonnements qui ont été supprimées dans PBL 8 et l'API alternative correspondante que vous devez utiliser dans votre application.
API précédemment obsolète supprimée dans la PBL 8 API alternative à utiliser setOldSkuPurchaseToken setOldPurchaseToken setReplaceProrationMode setSubscriptionReplacementMode setReplaceSkusProrationMode setSubscriptionReplacementMode Mettez à jour l'implémentation de la méthode
queryProductDetailsAsync.La signature de la méthode
ProductDetailsResponseListener.onProductDetailsResponsea été modifiée, ce qui nécessite des modifications dans votre application pour l'implémentation dequeryProductDetailsAsync. Pour en savoir plus, consultez Afficher les produits disponibles à l'achat.Gérer les API supprimées
Mettre à niveau depuis
PBL 8 n'est plus compatible avec les API listées dans le tableau suivant. Si votre implémentation utilise l'une de ces API supprimées, consultez le tableau pour connaître les API de remplacement correspondantes.
API précédemment obsolète supprimée dans la PBL 8 API alternative à utiliser API queryPurchaseHistoryAsync Consultez Interroger l'historique des achats. querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (API sans paramètres) enablePendingPurchases(PendingPurchaseParams params)
Notez que la méthode enablePendingPurchases() obsolète est fonctionnellement équivalente àenablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build()).queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync BillingClient.Builder.enableAlternativeBilling BillingClient.Builder.enableUserChoiceBilling AlternativeBillingListener UserChoiceBillingListener AlternativeChoiceDetails UserChoiceDetails Mettre à niveau depuis
Le tableau suivant liste les API supprimées dans PBL 8 et les API alternatives correspondantes que vous devez utiliser dans votre application.
API précédemment obsolète supprimée dans la PBL 8 API alternative à utiliser API queryPurchaseHistoryAsync Consultez Interroger l'historique des achats. querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (API sans paramètres) enablePendingPurchases(PendingPurchaseParams params)
Notez que la méthode enablePendingPurchases() obsolète est fonctionnellement équivalente àenablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build()).queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync (Recommandé) Activez la reconnexion automatique au service.
La bibliothèque Play Billing peut tenter de rétablir automatiquement la connexion au service si un appel d'API est effectué alors que le service est déconnecté. Pour en savoir plus, consultez Activer la reconnexion automatique au service.
Modifications facultatives.
Prise en charge des achats en attente pour les forfaits prépayés. Pour en savoir plus, consultez Gérer les abonnements et les transactions en attente.
Abonnements avec versements virtuels. Pour en savoir plus, consultez Intégration des abonnements par versements.