La documentation com.google.android.gms.wallet contient une documentation complète sur la bibliothèque pour plusieurs versions de l'API Google Pay. Vous trouverez ci-dessous un résumé des objets et des méthodes les plus adaptés à la version la plus récente de l'API Google Pay : la version 2.0.
Wallet
Générez un PaymentsClient pour un environnement de test ou de production.
Exemple
mPaymentsClient = Wallet.getPaymentsClient( this, new Wallet.WalletOptions.Builder() .setEnvironment(WalletConstants.ENVIRONMENT_TEST) .build() );
PaymentsClient
Client permettant d'interagir avec les API Google Pay.
isReadyToPay(IsReadyToPayRequest)
Utilisez la méthode isReadyToPay(IsReadyToPayRequest) pour déterminer si un utilisateur peut renvoyer un mode de paiement à partir de l'API Google Pay.
Si l'appareil est compatible avec Google Pay et que l'utilisateur a déjà enregistré un mode de paiement ou peut en ajouter un, IsReadyToPay renvoie true. Pour déterminer si l'utilisateur a déjà enregistré un mode de paiement dans Google Pay, définissez IsReadyToPayRequest.existingPaymentMethodRequired sur true.
loadPaymentData(PaymentDataRequest)
Présentez une feuille de paiement Google Pay permettant de sélectionner un mode de paiement et des paramètres éventuellement configurés.
IsReadyToPayRequest
Créez un objet Java IsReadyToPayRequest adapté à une utilisation avec PaymentsClient.isReadyToPay().
fromJson(java.lang.String)
Créez un objet Java IsReadyToPayRequest à partir d'une chaîne au format JSON. Consultez la documentation de référence sur l'objet IsReadyToPayRequest pour connaître la structure attendue de la chaîne au format JSON fournie.
PaymentDataRequest
Créez un objet Java PaymentDataRequest adapté à une utilisation avec PaymentsClient.loadPaymentData.
fromJson(java.lang.String)
Créez un objet Java PaymentDataRequest à partir d'une chaîne au format JSON. Consultez la documentation de référence sur l'objet PaymentDataRequest pour connaître la structure attendue de la chaîne au format JSON fournie.
PaymentData
Gérer une réponse au format JSON de l'API Google Pay pour l'utiliser dans votre application
toJson()
Générez une réponse de l'API Google Pay sous forme de chaîne au format JSON. Pour en savoir plus sur la structure de l'objet JSON, consultez la documentation de référence sur l'objet PaymentData.
PayButton
public void initialize(ButtonOption buttonOptions)
La méthode pratique permet d'initialiser un bouton de paiement Google Pay stylisé avec la dernière image de marque Google Pay.
Arguments
| Nom | Description |
|---|---|
buttonOptions |
Objet qui configure le bouton de paiement Google Pay. Pour connaître les propriétés configurables, consultez ButtonOptions. |
Exemple : Initialisez le bouton de paiement avec des configurations personnalisées :
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)
La méthode pratique définit la visibilité du bouton de paiement.
Arguments
| Nom | Description |
|---|---|
View |
|
Exemple :
payButton.setVisibility(View.VISIBLE);
public void setOnClickListener(View.OnClickListener listener)
La méthode est appelée lorsque l'utilisateur clique sur le bouton de paiement Google Pay.
Arguments
| Nom | Description |
|---|---|
listener |
Rappel de l'écouteur d'événements à appeler lorsqu'un événement de clic est envoyé au bouton de paiement Google Pay. |
BasePaymentDataCallbacksService
Classe de service de base qui héberge les rappels de données de paiement initiés par les services Google Play dans un flux PaymentsClient.loadPaymentData(PaymentDataRequest).
Étendez ce service dans votre application et déclarez-le dans votre AndroidManifest.xml avec l'autorisation com.google.android.gms.permission.BIND_PAYMENTS_CALLBACK_SERVICE et un filtre d'intent pour com.google.android.gms.wallet.callback.PAYMENT_DATA_CALLBACKS.
createPaymentDataCallbacks()
Renvoie une implémentation de BasePaymentDataCallbacks pour gérer les événements de rappel entrants. Appelée une fois par événement de rappel.
BasePaymentDataCallbacks
Classe de base abstraite contenant les gestionnaires de rappels de données de paiement implémentés par le marchand pour prendre en charge les mises à jour dynamiques des prix et l'autorisation de paiement.
onPaymentDataChanged(intermediatePaymentData, onCompleteListener)
Cette méthode gère les modifications des données de paiement dans la feuille de paiement, telles que l'adresse de livraison et les options de livraison.
Arguments
bonjour| Nom | Type | Description |
|---|---|---|
intermediatePaymentData |
IntermediatePaymentData |
Objet contenant l'adresse et l'option de livraison sélectionnées dans la feuille de paiement. Pour en savoir plus, consultez IntermediatePaymentData. |
onCompleteListener |
OnCompleteListener<PaymentDataRequestUpdate> |
Écouteur à résoudre avec les informations de transaction, les options de livraison et les erreurs de données de paiement mises à jour. Transmettez une instance PaymentDataRequestUpdate à complete(). |
Exemple
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)
Cette méthode est appelée lorsqu'un paiement est autorisé dans la feuille de paiement.
Arguments
| Nom | Type | Description |
|---|---|---|
paymentData |
PaymentData |
Objet contenant les données de l'acheteur demandées. Pour en savoir plus, consultez PaymentData. |
onCompleteListener |
OnCompleteListener<PaymentAuthorizationResult> |
Écouteur à résoudre avec le résultat de l'autorisation. Transmettez une instance PaymentAuthorizationResult à complete(). |
Exemple
override fun onPaymentAuthorized( paymentData: PaymentData, onCompleteListener: OnCompleteListener<PaymentAuthorizationResult> ) { val paymentAuthorizationResultJson = handlePaymentAuthorized(paymentData.toJson()) val result = PaymentAuthorizationResult.fromJson(paymentAuthorizationResultJson.toString()) onCompleteListener.complete(result) }
IntermediatePaymentData
Gérez les données de rappel intermédiaires transmises à BasePaymentDataCallbacks.onPaymentDataChanged.
toJson()
Renvoie les données de la requête de rappel sous forme de chaîne au format JSON. Pour en savoir plus sur la structure de l'objet JSON, consultez la documentation de référence sur l'objet IntermediatePaymentData.
getLastSavedState()
Renvoie l'élément Bundle contenant l'état enregistré lors de l'itération de rappel précédente.
PaymentDataRequestUpdate
Créez un objet Java PaymentDataRequestUpdate à renvoyer dans BasePaymentDataCallbacks.onPaymentDataChanged.
fromJson(java.lang.String)
Créez un objet Java PaymentDataRequestUpdate à partir d'une chaîne au format JSON. Consultez la documentation de référence sur l'objet PaymentDataRequestUpdate pour connaître la structure attendue de la chaîne au format JSON fournie.
withUpdatedSavedState(Bundle)
Associe un état mis à jour Bundle pour qu'il persiste entre les appels de rappel.
PaymentAuthorizationResult
Créez un objet Java PaymentAuthorizationResult à renvoyer dans BasePaymentDataCallbacks.onPaymentAuthorized.
fromJson(java.lang.String)
Créez un objet Java PaymentAuthorizationResult à partir d'une chaîne au format JSON. Consultez la documentation de référence sur l'objet de réponse PaymentAuthorizationResult pour connaître la structure attendue de la chaîne au format JSON fournie.