Z tego dokumentu dowiesz się, jak przejść z Biblioteki płatności w Google Play w wersji 5 lub 6 na Bibliotekę płatności w Google Play 7 oraz jak zintegrować ją z nowymi opcjonalnymi funkcjami subskrypcji.
Pełną listę zmian w wersji 7.0.0 znajdziesz w informacjach o wersji.
Przegląd
Biblioteka płatności w Google Play 7 ulepsza obsługę płatności w przypadku dotychczasowych funkcji subskrypcji. Te opcjonalne ulepszenia umożliwiają płacenie na raty oraz obsługę oczekujących zakupów przedpłaconych subskrypcji.
Zgodna wstecznie aktualizacja Biblioteki płatności w Play
Wszystkie nowe interfejsy API Biblioteki płatności w Google Play 7 są opcjonalne i nie muszą w tym celu wprowadzać żadnych zmian w interfejsie API.
Aby przeprowadzić migrację, musisz zaktualizować odniesienia do interfejsów API i usunąć z aplikacji określone interfejsy API w sposób opisany w informacjach o wersji oraz w dalszej części tego przewodnika po migracji.
Uaktualnienie z PBL 5 do PBL 7
W poniższych sekcjach opisano, jak przejść z PBL 5 na PBL 7.
Aktualizowanie Biblioteki płatności w Google Play
Zaktualizuj wersję zależności Biblioteki płatności w Play w pliku build.gradle
aplikacji.
dependencies {
def billingVersion = 7.0.0
implementation "com.android.billingclient:billing:$billingVersion"
}
Następnie zaktualizuj odwołania do interfejsu API w sposób opisany w kolejnych sekcjach.
Zmienianie zakupów subskrypcji użytkownika
Biblioteka płatności w Google Play w wersji 5 i starszych używała narzędzia ProrationMode
do wprowadzania zmian w zakupach subskrypcji przez użytkowników, takich jak przejście na wyższą lub niższą wersję usługi. Ten interfejs API został usunięty i zastąpiony przez ReplacementMode
.
Obsługa zmian cen subskrypcji
Wycofany wcześniej interfejs API launchPriceConfirmationFlow
został usunięty.
Inne opcje znajdziesz w przewodniku po zmianach cen.
Obsługa zmian w interfejsie API związanych z subskrypcjami
Wycofane wcześniej interfejsy API setOldSkuPurchaseToken
, setReplaceProrationMode
i setReplaceSkusProrationMode
zostały usunięte.
- Zaktualizuj aplikację
setOldSkuPurchaseToken
do wersjisetOldPurchaseToken
. - Zaktualizuj
setReplaceProrationMode
dosetSubscriptionReplacementMode
. - Zaktualizuj
setReplaceSkusProrationMode
dosetSubscriptionReplacementMode
.
Naprawianie błędów Biblioteki płatności w Play
Nowy kod NETWORK_ERROR
wskazuje problemy z połączeniem sieciowym między urządzeniem użytkownika a systemem Google Play.
Zaktualizowano również kody SERVICE_TIMEOUT
i SERVICE_UNAVAILABLE
.
Więcej informacji znajdziesz w sekcji Obsługa kodów odpowiedzi BillingResult.
Obsługa oczekujących transakcji
Biblioteka płatności w Google Play nie tworzy już identyfikatorów oczekujących zakupów.
W przypadku takich zakupów identyfikator zamówienia jest wypełniany po przeniesieniu zakupu do stanu PURCHASED
. Dopilnuj, aby integracja wymagała identyfikatora zamówienia, dopiero gdy transakcja zostanie w pełni zakończona. Nadal możesz używać
tokena zakupu na potrzeby swoich danych.
Więcej informacji o obsłudze oczekujących zakupów znajdziesz w przewodniku po integracji Biblioteki płatności w Play i w przewodniku po zarządzaniu cyklem życia zakupów.
Obsługa usuniętych interfejsów API rozliczeń alternatywnych
Usunięto BillingClient.Builder.enableAlternativeBilling
, AlternativeBillingListener
i AlternativeChoiceDetails
.
Deweloperzy powinni zamiast tego używać BillingClient.Builder.enableUserChoiceBilling()
z UserChoiceBillingListener
i UserChoiceDetails
w wywołaniu zwrotnym detektora.
Ta aktualizacja polega na zmianie nazwy wycofanych interfejsów API bez zmiany ich działania.
Zmiany opcjonalne
PBL 7 zawiera dwa nowe opcjonalne interfejsy API.
Obsługa oczekujących zakupów w ramach abonamentów przedpłaconych
Zapoznaj się z przewodnikiem Obsługa subskrypcji i oczekujących transakcji.
Subskrypcje ratalne
Zobacz przewodnik po integrowaniu subskrypcji ratalnych.
Uaktualnienie z PBL 6 do PBL 7
W poniższych sekcjach opisano, jak przejść z PBL 6 na PBL 7.
Aktualizowanie Biblioteki płatności w Google Play
Zaktualizuj wersję zależności Biblioteki płatności w Play w pliku build.gradle
aplikacji.
dependencies {
def billingVersion = 7.0.0
implementation "com.android.billingclient:billing:$billingVersion"
}
Następnie zaktualizuj odwołania do interfejsu API w sposób opisany w kolejnych sekcjach.
Obsługa zmian w interfejsie API związanych z subskrypcjami
Wycofane wcześniej interfejsy API setOldSkuPurchaseToken
, setReplaceProrationMode
i setReplaceSkusProrationMode
zostały usunięte.
- Zaktualizuj aplikację
setOldSkuPurchaseToken
do wersjisetOldPurchaseToken
. - Zaktualizuj
setReplaceProrationMode
dosetSubscriptionReplacementMode
. - Zaktualizuj
setReplaceSkusProrationMode
dosetSubscriptionReplacementMode
.
Obsługa usuniętych interfejsów API rozliczeń alternatywnych
Usunięto BillingClient.Builder.enableAlternativeBilling
, AlternativeBillingListener
i AlternativeChoiceDetails
.
Deweloperzy powinni zamiast tego używać BillingClient.Builder.enableUserChoiceBilling()
z UserChoiceBillingListener
i UserChoiceDetails
w wywołaniu zwrotnym detektora.
Zmiany opcjonalne
PBL 7 zawiera dwa nowe opcjonalne interfejsy API.
Obsługa oczekujących zakupów w ramach abonamentów przedpłaconych
Zapoznaj się z przewodnikiem Obsługa subskrypcji i oczekujących transakcji.
Subskrypcje ratalne
Informacje o tym, jak zintegrować te zmiany z aplikacją, znajdziesz w przewodniku po integracji subskrypcji ratalnych.