Kundenreferenz

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

View.VISIBLE legt fest, dass die Zahlungsschaltfläche sichtbar ist (Standard).

View.GONE blendet die Schaltfläche für Nutzer aus.

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.