Die Dokumentation zu com.google.android.gms.wallet enthält die vollständige Dokumentation für die Bibliothek für mehrere Versionen der Google Pay API. Im Folgenden finden Sie eine Zusammenfassung der Objekte und Methoden, die für die neueste Version der Google Pay API: (Version 2.0) am relevantesten sind.
Wallet
PaymentsClient für eine Test- oder Produktionsumgebung generieren.
Beispiel
mPaymentsClient = Wallet.getPaymentsClient( this, new Wallet.WalletOptions.Builder() .setEnvironment(WalletConstants.ENVIRONMENT_TEST) .build() );
PaymentsClient
Ein Client für die Interaktion mit den Google Pay APIs.
isReadyToPay(IsReadyToPayRequest)
Mit der Methode isReadyToPay(IsReadyToPayRequest) können Sie ermitteln, ob ein Nutzer
eine Zahlungsart aus der Google Pay API zurückgeben kann.
Wenn das Gerät Google Pay unterstützt und der Nutzer entweder bereits eine Zahlungsmethode gespeichert hat oder eine hinzufügen kann,
gibt IsReadyToPay true zurück. Wenn Sie ermitteln möchten, ob der Nutzer
bereits eine Zahlungsmethode in Google Pay gespeichert hat, setzen Sie
IsReadyToPayRequest.existingPaymentMethodRequired
auf true.
loadPaymentData(PaymentDataRequest)
Ein Google Pay-Zahlungsformular präsentieren, in dem eine Zahlungsmethode und optional konfigurierte Parameter ausgewählt werden können.
IsReadyToPayRequest
Ein IsReadyToPayRequest Java-Objekt erstellen, das für die Verwendung mit PaymentsClient.isReadyToPay() geeignet ist.
fromJson(java.lang.String)
Ein IsReadyToPayRequest-Java-Objekt aus einem JSON-formatierten String erstellen. Die erwartete Struktur des bereitgestellten JSON-formatierten Strings finden Sie in der
Objektreferenz zu IsReadyToPayRequest.
PaymentDataRequest
Ein PaymentDataRequest Java-Objekt erstellen, das für die Verwendung mit PaymentsClient.loadPaymentData geeignet ist.
fromJson(java.lang.String)
Ein PaymentDataRequest-Java-Objekt aus einem JSON-formatierten String erstellen. Die erwartete Struktur des bereitgestellten JSON-formatierten Strings finden Sie in der
Objektreferenz zu PaymentDataRequest.
PaymentData
Eine JSON-formatierte Antwort der Google Pay API für die Verwendung in Ihrer App verarbeiten.
toJson()
Eine Google Pay API-Antwort als JSON-formatierten String ausgeben. Weitere Informationen zur Struktur des JSON-Objekts finden Sie in der Objektreferenz zu PaymentData.
PayButton
public void initialize(ButtonOption buttonOptions)
Mit dieser Hilfsmethode wird eine Google Pay-Zahlungsschaltfläche initialisiert, die mit dem neuesten Google Pay-Branding gestaltet ist.
Argumente
| Name | Beschreibung |
|---|---|
buttonOptions |
Ein Objekt, das die Google Pay-Zahlungsschaltfläche konfiguriert. Konfigurierbare Attribute finden Sie unter ButtonOptions. |
Beispiel: Zahlungsschaltfläche mit benutzerdefinierten Konfigurationen initialisieren:
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)
Mit dieser Hilfsmethode wird die Sichtbarkeit der Zahlungsschaltfläche festgelegt.
Argumente
| Name | Beschreibung |
|---|---|
View |
|
Beispiel:
payButton.setVisibility(View.VISIBLE);
public void setOnClickListener(View.OnClickListener listener)
Die Methode wird aufgerufen, wenn der Nutzer auf die Google Pay-Zahlungsschaltfläche klickt.
Argumente
| Name | Beschreibung |
|---|---|
listener |
Ein Event-Listener-Callback, das aufgerufen wird, wenn ein Click-Event an die Google Pay-Zahlungsschaltfläche gesendet wird. |
BasePaymentDataCallbacksService
Basisdienstklasse, die die Rückrufe für Zahlungsdaten hostet, die von den Google Play-Diensten initiiert werden
in einem PaymentsClient.loadPaymentData(PaymentDataRequest)-Ablauf.
Erweitern Sie diesen Dienst in Ihrer Anwendung und deklarieren Sie ihn in AndroidManifest.xml mit der Berechtigung com.google.android.gms.permission.BIND_PAYMENTS_CALLBACK_SERVICE und einem Intent-Filter für com.google.android.gms.wallet.callback.PAYMENT_DATA_CALLBACKS.
createPaymentDataCallbacks()
Gibt eine Implementierung von BasePaymentDataCallbacks
zurück, um eingehende Rückrufereignisse zu verarbeiten. Wird einmal pro Rückrufereignis aufgerufen.
BasePaymentDataCallbacks
Abstrakte Basisklasse mit den Rückruf-Handlern für Zahlungsdaten, die vom Händler implementiert werden, um dynamische Preisaktualisierungen und die Zahlungsautorisierung zu unterstützen.
onPaymentDataChanged(intermediatePaymentData, onCompleteListener)
Diese Methode verarbeitet Änderungen an den Zahlungsdaten im Zahlungsformular, z. B. an der Versandadresse und den Versandoptionen.
Argumente
| Name | Typ | Beschreibung |
|---|---|---|
intermediatePaymentData |
IntermediatePaymentData |
Ein Objekt, das die ausgewählte Adresse und Versandoption in
das Zahlungsformular enthält. Weitere Informationen finden Sie unter
IntermediatePaymentData. |
onCompleteListener |
OnCompleteListener<PaymentDataRequestUpdate> |
Ein Listener, der mit den aktualisierten Transaktionsinformationen, Versandoptionen und Fehlern bei den Zahlungsdaten aufgelöst werden soll. Übergeben Sie eine
PaymentDataRequestUpdate-Instanz an complete(). |
Beispiel
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)
Diese Methode wird aufgerufen, wenn eine Zahlung im Zahlungsformular autorisiert wird.
Argumente
| Name | Typ | Beschreibung |
|---|---|---|
paymentData |
PaymentData |
Ein Objekt, das die angeforderten Käuferdaten enthält. Weitere Informationen finden Sie unter PaymentData. |
onCompleteListener |
OnCompleteListener<PaymentAuthorizationResult> |
Ein Listener, der mit dem Autorisierungsergebnis aufgelöst werden soll. Übergeben Sie eine
PaymentAuthorizationResult-Instanz an complete(). |
Beispiel
override fun onPaymentAuthorized( paymentData: PaymentData, onCompleteListener: OnCompleteListener<PaymentAuthorizationResult> ) { val paymentAuthorizationResultJson = handlePaymentAuthorized(paymentData.toJson()) val result = PaymentAuthorizationResult.fromJson(paymentAuthorizationResultJson.toString()) onCompleteListener.complete(result) }
IntermediatePaymentData
Zwischen-Callback-Daten verarbeiten, die an BasePaymentDataCallbacks.onPaymentDataChanged übergeben werden.
toJson()
Die Daten der Rückrufanfrage als JSON-formatierten String ausgeben. Weitere Informationen zur Struktur des JSON-Objekts finden Sie in der Objektreferenz zu IntermediatePaymentData.
getLastSavedState()
Gibt das Bundle mit dem Status zurück, der während der vorherigen Rückruf-Iteration gespeichert wurde.
PaymentDataRequestUpdate
Ein PaymentDataRequestUpdate Java-Objekt erstellen, das in
BasePaymentDataCallbacks.onPaymentDataChanged zurückgegeben werden soll.
fromJson(java.lang.String)
Ein PaymentDataRequestUpdate-Java-Objekt aus einem JSON-formatierten String erstellen. Die erwartete Struktur des bereitgestellten JSON-formatierten Strings finden Sie in der
Objektreferenz zu PaymentDataRequestUpdate.
withUpdatedSavedState(Bundle)
Ein aktualisiertes Bundle anhängen, das zwischen Rückrufaufrufen beibehalten werden soll.
PaymentAuthorizationResult
Ein PaymentAuthorizationResult Java-Objekt erstellen, das in
BasePaymentDataCallbacks.onPaymentAuthorized zurückgegeben werden soll.
fromJson(java.lang.String)
Ein PaymentAuthorizationResult-Java-Objekt aus einem JSON-formatierten String erstellen. Die erwartete Struktur des bereitgestellten JSON-formatierten Strings finden Sie in der
Objektreferenz zum Antwortobjekt PaymentAuthorizationResult.