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ń
setOldSkuPurchaseTokennasetOldPurchaseToken. - Zaktualizuj
setReplaceProrationModedosetSubscriptionReplacementMode. - Zaktualizuj
setReplaceSkusProrationModedosetSubscriptionReplacementMode.
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 UserChoiceBillingListeneri UserChoiceDetailsw 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ń
setOldSkuPurchaseTokennasetOldPurchaseToken. - Zaktualizuj
setReplaceProrationModedosetSubscriptionReplacementMode. - Zaktualizuj
setReplaceSkusProrationModedosetSubscriptionReplacementMode.
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 UserChoiceBillingListeneri UserChoiceDetailsw 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.