Dokumentacja com.google.android.gms.wallet documentation zawiera pełną dokumentację biblioteki dotyczącą różnych wersji Google Pay API. Poniżej znajdziesz podsumowanie obiektów i metod, których można używać w najnowszej wersji Google Pay API: 2.0
Portfel
Wygeneruj PaymentsClient dla środowiska testowego lub produkcyjnego.
Przykład
mPaymentsClient = Wallet.getPaymentsClient( this, new Wallet.WalletOptions.Builder() .setEnvironment(WalletConstants.ENVIRONMENT_TEST) .build() );
PaymentsClient
Klient, który wchodzi w interakcję z interfejsami Google Pay API.
isReadyToPay(IsReadyToPayRequest)
Metoda isReadyToPay(IsReadyToPayRequest) pozwala określić, czy użytkownik może
zwrócić formę płatności z Google Pay API.
Jeśli urządzenie obsługuje Google Pay, a użytkownik zapisał już formę płatności lub ją dodał, IsReadyToPay zwraca true. Aby sprawdzić, czy użytkownik
zapisał już formę płatności w Google Pay, ustaw
IsReadyToPayRequest.existingPaymentMethodRequired
na true.
loadPaymentData(PaymentDataRequest)
Wyświetl arkusz płatności Google Pay pozwalający wybrać formę płatności i opcjonalnie skonfigurowane parametry.
IsReadyToPayRequest
Utwórz obiekt Javy IsReadyToPayRequest, którego można użyć z PaymentsClient.isReadyToPay().
fromJson(java.lang.String)
Utwórz obiekt Javy IsReadyToPayRequest na podstawie ciągu znaków w formacie JSON. Poprawną strukturę tego ciągu znajdziesz w dokumentacji referencyjnej obiektu
IsReadyToPayRequest.
PaymentDataRequest
Utwórz obiekt Javy PaymentDataRequest, którego można użyć z PaymentsClient.loadPaymentData.
fromJson(java.lang.String)
Utwórz obiekt Javy PaymentDataRequest na podstawie ciągu znaków w formacie JSON. Poprawną strukturę tego ciągu znajdziesz w dokumentacji referencyjnej obiektu
PaymentDataRequest.
PaymentData
Przetwórz odpowiedź Google Pay API w formacie JSON, której chcesz użyć w swojej aplikacji.
toJson()
Podaj odpowiedź Google Pay API w formie ciągu znaków JSON. Więcej informacji o strukturze obiektu JSON znajdziesz w dokumentacji referencyjnej obiektu PaymentData.
PayButton
public void initialize(ButtonOption buttonOptions)
Ta wygodna metoda służy do inicjowania przycisku płatności Google Pay zawierającego aktualne elementy marki.
Argumenty
| Nazwa | Opis |
|---|---|
buttonOptions |
Obiekt, który konfiguruje przycisk płatności Google Pay. Więcej informacji o właściwościach, które można skonfigurować, znajdziesz w sekcji ButtonOptions. |
Przykład: inicjowanie przycisku płatności z niestandardowymi konfiguracjami:
PayButton googlePayPaymentButton = layoutBinding.googlePayPaymentButton; JSONArray paymentMethods = new JSONArray().put(getBaseCardPaymentMethod()); googlePayPaymentButton.initialize( ButtonOptions.newBuilder() .setButtonTheme(ButtonConstants.ButtonTheme.DARK) .setButtonType(ButtonConstants.ButtonType.BUY) .setCornerRadius(100) .setAllowedPaymentMethods(paymentMethods.toString()) .build() );
public void setVisibility(View view)
Ta wygodna metoda ustawia widoczność przycisku płatności.
Argumenty
| Nazwa | Opis |
|---|---|
View |
|
Przykład:
payButton.setVisibility(View.VISIBLE);
public void setOnClickListener(View.OnClickListener listener)
Metoda jest wywoływana, gdy użytkownik kliknie przycisk płatności Google Pay.
Argumenty
| Nazwa | Opis |
|---|---|
listener |
Wywołanie zwrotne detektora zdarzeń, które ma być uruchomione, gdy zdarzenie kliknięcia zostanie dostarczone do przycisku płatności Google Pay. |
BasePaymentDataCallbacksService
Podstawowa klasa usługi, która obsługuje wywołania zwrotne danych płatności inicjowane przez Usługi Google Play
w ramach PaymentsClient.loadPaymentData(PaymentDataRequest) przepływu.
Rozszerz tę usługę w swojej aplikacji i zadeklaruj ją w pliku AndroidManifest.xml z uprawnieniem com.google.android.gms.permission.BIND_PAYMENTS_CALLBACK_SERVICE i filtrem intencji dla com.google.android.gms.wallet.callback.PAYMENT_DATA_CALLBACKS.
createPaymentDataCallbacks()
Zwraca implementację BasePaymentDataCallbacks
do obsługi przychodzących zdarzeń wywołania zwrotnego. Wywoływana raz na zdarzenie wywołania zwrotnego.
BasePaymentDataCallbacks
Abstrakcyjna klasa bazowa zawierająca obsługę wywołań zwrotnych danych płatności zaimplementowaną przez sprzedawcę w celu obsługi dynamicznych aktualizacji cen i autoryzacji płatności.
onPaymentDataChanged(intermediatePaymentData, onCompleteListener)
Ta metoda obsługuje zmiany w danych płatności w arkuszu płatności, takich jak adres dostawy i opcje dostawy.
Argumenty
| Nazwa | Typ | Opis |
|---|---|---|
intermediatePaymentData |
IntermediatePaymentData |
Obiekt zawierający opcję dostawy i adres podane w
arkuszu płatności. Więcej informacji znajdziesz w sekcji IntermediatePaymentData. |
onCompleteListener |
OnCompleteListener<PaymentDataRequestUpdate> |
Detektor, który ma zostać rozwiązany z zaktualizowanymi informacjami o transakcji, opcjami dostawy i błędami w danych dotyczących płatności. Przekaż instancję
PaymentDataRequestUpdate do complete(). |
Przykład
override fun onPaymentDataChanged( intermediatePaymentData: IntermediatePaymentData, onCompleteListener: OnCompleteListener<PaymentDataRequestUpdate> ) { val paymentDataRequestUpdateJson = handlePaymentDataChanged(intermediatePaymentData.toJson()) val update = PaymentDataRequestUpdate.fromJson(paymentDataRequestUpdateJson.toString()) onCompleteListener.complete(update) }
onPaymentAuthorized(paymentData, onCompleteListener)
Ta metoda jest wywoływana, gdy płatność jest autoryzowana w arkuszu płatności.
Argumenty
| Nazwa | Typ | Opis |
|---|---|---|
paymentData |
PaymentData |
Obiekt zawierający żądane dane kupującego. Więcej informacji znajdziesz w sekcji PaymentData. |
onCompleteListener |
OnCompleteListener<PaymentAuthorizationResult> |
Detektor, który ma zostać rozwiązany z wynikiem autoryzacji. Przekaż PaymentAuthorizationResultinstancję do complete(). |
Przykład
override fun onPaymentAuthorized( paymentData: PaymentData, onCompleteListener: OnCompleteListener<PaymentAuthorizationResult> ) { val paymentAuthorizationResultJson = handlePaymentAuthorized(paymentData.toJson()) val result = PaymentAuthorizationResult.fromJson(paymentAuthorizationResultJson.toString()) onCompleteListener.complete(result) }
IntermediatePaymentData
Obsługa danych wywołania zwrotnego przekazywanych do BasePaymentDataCallbacks.onPaymentDataChanged.
toJson()
Dane żądania wywołania zwrotnego są wyświetlane w postaci ciągu znaków JSON. Więcej informacji o strukturze obiektu JSON znajdziesz w dokumentacji referencyjnej obiektu IntermediatePaymentData.
getLastSavedState()
Zwraca Bundle zawierający stan zapisany podczas poprzedniej iteracji wywołania zwrotnego.
PaymentDataRequestUpdate
Utwórz obiekt Javy PaymentDataRequestUpdate, który ma zostać zwrócony w
BasePaymentDataCallbacks.onPaymentDataChanged.
fromJson(java.lang.String)
Utwórz obiekt Javy PaymentDataRequestUpdate na podstawie ciągu znaków w formacie JSON. Poprawną strukturę tego ciągu znajdziesz w dokumentacji referencyjnej obiektu
PaymentDataRequestUpdate.
withUpdatedSavedState(Bundle)
Dołącza zaktualizowany stan Bundle, który ma być zachowany między wywołaniami zwrotnymi.
PaymentAuthorizationResult
Utwórz obiekt Javy PaymentAuthorizationResult, który ma zostać zwrócony w
BasePaymentDataCallbacks.onPaymentAuthorized.
fromJson(java.lang.String)
Utwórz obiekt Javy PaymentAuthorizationResult na podstawie ciągu znaków w formacie JSON. Poprawną strukturę tego ciągu znajdziesz w dokumentacji referencyjnej obiektu odpowiedzi
PaymentAuthorizationResult.