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 w wersji 7 oraz jak zintegrować nowe opcjonalne funkcje subskrypcji.
Pełną listę zmian w wersji 7.0.0 znajdziesz w informacjach o wersji.
Omówienie
Biblioteka Płatności w Google Play w wersji 7 poprawia obsługę płatności w przypadku dotychczasowych funkcji subskrypcji. Te opcjonalne ulepszenia obejmują obsługę płatności ratalnych oraz oczekujących zakupów w przypadku abonamentów przedpłaconych.
Kompatybilna wstecz aktualizacja Biblioteki płatności w Play
Wszystkie nowe interfejsy API Biblioteki płatności w Google Play 7 są opcjonalne i nie wymagają wprowadzania zmian w interfejsach API.
Aby przeprowadzić migrację, musisz zaktualizować odwołania do interfejsów API i usunąć z aplikacji niektóre interfejsy API zgodnie z opisem w notatkach o wersji i w tym przewodniku.
Przechodzenie z PBL 5 na PBL 7
W sekcjach poniżej znajdziesz instrukcje przejścia z wersji 5 na wersję 7.
Aktualizacja 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 zgodnie z opisem w sekcjach poniżej.
Zmienianie zakupów subskrypcji przez użytkownika
Biblioteka płatności w Play w wersji 5 i starszych używała ProrationMode
do stosowania zmian w zakupach subskrypcji użytkownika, takich jak ulepszenia lub obniżenia poziomu. Ten interfejs API został usunięty i zastąpiony interfejsem ReplacementMode
.
Obsługa zmian cen subskrypcji
Wycofany wcześniej interfejs API launchPriceConfirmationFlow
został usunięty.
Alternatywy znajdziesz w przewodniku dotyczącym zmian cen.
Obsługa zmian interfejsu API związanych z subskrypcją
Wycofane wcześniej interfejsy API setOldSkuPurchaseToken
,
setReplaceProrationMode
i setReplaceSkusProrationMode
zostały usunięte.
- Zmień
setOldSkuPurchaseToken
nasetOldPurchaseToken
. - Zaktualizuj
setReplaceProrationMode
dosetSubscriptionReplacementMode
. - Zaktualizuj
setReplaceSkusProrationMode
dosetSubscriptionReplacementMode
.
Obsługa błędów Biblioteki płatności w Play
Nowy kod NETWORK_ERROR
wskazuje na problemy z połączeniem sieciowym między urządzeniem użytkownika a systemem Google Play.
Zaktualizowano też kody SERVICE_TIMEOUT
i SERVICE_UNAVAILABLE
.
Więcej informacji znajdziesz w artykule Przetwarzanie kodów odpowiedzi BillingResult.
Obsługa oczekujących transakcji
Biblioteka płatności Google Play nie tworzy już identyfikatora zamówienia dla oczekujących zakupów.
W przypadku tych zakupów identyfikator zamówienia jest wypełniany po przeniesieniu zakupu do stanu PURCHASED
. Upewnij się, że integracja oczekuje identyfikatora zamówienia dopiero po zakończeniu transakcji. Nadal możesz używać tokenu zakupu do swoich rekordów.
Więcej informacji o obsługiwaniu oczekujących zakupów znajdziesz w przewodniku po integracji Biblioteki w Płatnościach w Play oraz w przewodniku po zarządzaniu cyklem życia zakupu.
Obsługa usuniętych interfejsów API do rozliczeń alternatywnych
Usunięto BillingClient.Builder.enableAlternativeBilling
,
AlternativeBillingListener
i AlternativeChoiceDetails
.
Deweloperzy powinni używać w zamiast tego operatora BillingClient.Builder.enableUserChoiceBilling()
z UserChoiceBillingListener
i UserChoiceDetails
w wywołaniu zwrotnym listenera.
Ta aktualizacja polega na zmianie nazwy wycofanych interfejsów API bez wprowadzania zmian w ich działaniu.
Opcjonalne zmiany
PBL 7 zawiera 2 nowe opcjonalne interfejsy API.
Obsługa oczekujących zakupów w przypadku abonamentów przedpłaconych
Zapoznaj się z przewodnikiem dotyczącym zarządzania subskrypcjami i oczekującymi transakcjami.
Subskrypcje z wirtualnym terminem płatności
Zapoznaj się z przewodnikiem integracji z subskrypcjami ratalnymi.
Przechodzenie z wersji PBL 6 na PBL 7
W sekcjach poniżej znajdziesz instrukcje przejścia z wersji 6 na wersję 7.
Aktualizacja 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 zgodnie z opisem w sekcjach poniżej.
Obsługa zmian interfejsu API związanych z subskrypcją
Wycofane wcześniej interfejsy API setOldSkuPurchaseToken
,
setReplaceProrationMode
i setReplaceSkusProrationMode
zostały usunięte.
- Zmień
setOldSkuPurchaseToken
nasetOldPurchaseToken
. - Zaktualizuj
setReplaceProrationMode
dosetSubscriptionReplacementMode
. - Zaktualizuj
setReplaceSkusProrationMode
dosetSubscriptionReplacementMode
.
Obsługa usuniętych interfejsów API do rozliczeń alternatywnych
Usunięto BillingClient.Builder.enableAlternativeBilling
,
AlternativeBillingListener
i AlternativeChoiceDetails
.
Deweloperzy powinni używać w zamiast tego operatora BillingClient.Builder.enableUserChoiceBilling()
z UserChoiceBillingListener
i UserChoiceDetails
w wywołaniu zwrotnym listenera.
Opcjonalne zmiany
PBL 7 zawiera 2 nowe opcjonalne interfejsy API.
Obsługa oczekujących zakupów w przypadku abonamentów przedpłaconych
Zapoznaj się z przewodnikiem dotyczącym zarządzania subskrypcjami i oczekującymi transakcjami.
Subskrypcje z wirtualnym terminem płatności
Informacje o integrowaniu tych zmian w aplikacji znajdziesz w przewodniku Integracja subskrypcji ratalnych.