In diesem Dokument wird beschrieben, wie Sie von der Google Play Billing Library (PBL) 6 oder 7 zu PBL 8 migrieren und wie Sie die neuen optionalen Abo-Funktionen einbinden.
Eine vollständige Liste der Änderungen in Version 8.0.0 finden Sie in den Versions hinweisen.
Übersicht
PBL 8 enthält Verbesserungen an bestehenden APIs sowie die Entfernung zuvor verworfener APIs. Diese Version der Bibliothek enthält auch neue APIs für Einmalprodukte.
Abwärtskompatibilität für PBL-Upgrade
Wenn Sie zu PBL 8 migrieren möchten, müssen Sie einige Ihrer vorhandenen API Verweise in Ihrer App aktualisieren oder entfernen, wie in den Versionshinweisen und weiter unten in diesem Migrationsleitfaden beschrieben.
Upgrade von PBL 6 oder 7 auf PBL 8
So führen Sie ein Upgrade von PBL 6 oder 7 auf PBL 8 durch:
Aktualisieren Sie die Version der Play Billing Library-Abhängigkeit in der Datei
build.gradleIhrer App.dependencies { def billingVersion = 8.0.0 implementation "com.android.billingclient:billing:$billingVersion" }(Gilt nur für das Upgrade von PBL 6 auf PBL 8) Behandeln Sie Änderungen an der Abo-API in Ihrer App.
In der folgenden Tabelle sind die Abo-APIs aufgeführt, die in PBL 8 entfernt wurden, sowie die entsprechende alternative API, die Sie in Ihrer App verwenden müssen.
Zuvor verworfene API, die in PBL 8 entfernt wurde Alternative API setOldSkuPurchaseToken setOldPurchaseToken setReplaceProrationMode setSubscriptionReplacementMode setReplaceSkusProrationMode setSubscriptionReplacementMode Aktualisieren Sie die Implementierung der
queryProductDetailsAsyncMethode.Die Signatur der
ProductDetailsResponseListener.onProductDetailsResponseMethode hat sich geändert. Daher sind Änderungen in Ihrer App für diequeryProductDetailsAsyncImplementierung erforderlich. Weitere Informationen finden Sie unter Verfügbare Produkte zum Kauf anzeigen.Entfernte APIs behandeln.
Upgrade von
PBL 8 unterstützt die in der folgenden Tabelle aufgeführten APIs nicht mehr. Wenn in Ihrer Implementierung eine dieser entfernten APIs verwendet wird, finden Sie in der Tabelle die entsprechenden alternativen APIs.
Zuvor verworfene API, die in PBL 8 entfernt wurde Alternative API queryPurchaseHistoryAsync-APIs Kaufverlauf abfragen querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (API ohne Parameter) enablePendingPurchases(PendingPurchaseParams params)
Beachten Sie, dass die verworfene API „enablePendingPurchases()“ funktional identisch ist mitenablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build()).queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync BillingClient.Builder.enableAlternativeBilling BillingClient.Builder.enableUserChoiceBilling AlternativeBillingListener UserChoiceBillingListener AlternativeChoiceDetails UserChoiceDetails Upgrade von
In der folgenden Tabelle sind die APIs aufgeführt, die in PBL 8 entfernt wurden, sowie die entsprechenden alternativen APIs, die Sie in Ihrer App verwenden müssen.
Zuvor verworfene API, die in PBL 8 entfernt wurde Alternative API queryPurchaseHistoryAsync-APIs Kaufverlauf abfragen querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (API ohne Parameter) enablePendingPurchases(PendingPurchaseParams params)
Beachten Sie, dass die verworfene API „enablePendingPurchases()“ funktional identisch ist mitenablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build()).queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync (Empfohlen) Automatische Wiederverbindung mit dem Dienst aktivieren.
Die Play Billing Library kann versuchen, die Dienstverbindung automatisch wiederherzustellen, wenn ein API-Aufruf erfolgt, während die Verbindung getrennt ist. Weitere Informationen finden Sie unter Automatische Wiederverbindung mit dem Dienst aktivieren.
Optionale Änderungen.
Ausstehende Käufe für Prepaid-Abos unterstützen. Weitere Informationen finden Sie unter Abos und ausstehende Transaktionen verwalten.
Abos mit virtuellen Raten. Weitere Informationen finden Sie unter Abos mit Ratenzahlung einbinden.