La documentazione di com.google.android.gms.wallet documentation contiene la documentazione completa della libreria per più versioni dell'API Google Pay. Di seguito è riportato un riepilogo degli oggetti e dei metodi più applicabili alla versione più recente dell'API Google Pay: versione 2.0
Wallet
Genera un PaymentsClient per un ambiente di test o di produzione.
Esempio
mPaymentsClient = Wallet.getPaymentsClient( this, new Wallet.WalletOptions.Builder() .setEnvironment(WalletConstants.ENVIRONMENT_TEST) .build() );
PaymentsClient
Un client per interagire con le API Google Pay.
isReadyToPay(IsReadyToPayRequest)
Utilizza il metodo isReadyToPay(IsReadyToPayRequest) per determinare la capacità di un utente di
restituire un modulo di pagamento dall'API Google Pay.
Se il dispositivo supporta Google Pay e l'utente ha già salvato un metodo di pagamento o può
aggiungerne uno, IsReadyToPay restituisce true. Per determinare se l'utente
ha già salvato un metodo di pagamento in Google Pay, imposta
IsReadyToPayRequest.existingPaymentMethodRequired
su true.
loadPaymentData(PaymentDataRequest)
Presenta un foglio di pagamento di Google Pay che consente la selezione di un metodo di pagamento e, facoltativamente, di parametri configurati.
IsReadyToPayRequest
Crea un oggetto Java IsReadyToPayRequest adatto all'uso con PaymentsClient.isReadyToPay().
fromJson(java.lang.String)
Crea un oggetto Java IsReadyToPayRequest da una stringa in formato JSON. Per la struttura prevista della stringa in formato JSON fornita, consulta il riferimento all'oggetto
IsReadyToPayRequest.
PaymentDataRequest
Crea un oggetto Java PaymentDataRequest adatto all'uso con PaymentsClient.loadPaymentData.
fromJson(java.lang.String)
Crea un oggetto Java PaymentDataRequest da una stringa in formato JSON. Per la struttura prevista della stringa in formato JSON fornita, consulta il
riferimento all'oggetto PaymentDataRequest.
PaymentData
Gestisci una risposta in formato JSON dell'API Google Pay da utilizzare nella tua app.
toJson()
Genera una risposta dell'API Google Pay come stringa in formato JSON. Per ulteriori informazioni sulla struttura dell'oggetto JSON, consulta il riferimento all'oggetto PaymentData.
PayButton
public void initialize(ButtonOption buttonOptions)
Il metodo di convenienza viene utilizzato per inizializzare un pulsante di pagamento di Google Pay con lo stile del brand Google Pay più recente.
Argomenti
| Nome | Descrizione |
|---|---|
buttonOptions |
Un oggetto che configura il pulsante di pagamento di Google Pay. Per le proprietà configurabili, consulta ButtonOptions. |
Esempio: inizializzare il pulsante di pagamento con configurazioni personalizzate:
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)
Il metodo di convenienza imposta la visibilità del pulsante di pagamento.
Argomenti
| Nome | Descrizione |
|---|---|
View |
|
Esempio:
payButton.setVisibility(View.VISIBLE);
public void setOnClickListener(View.OnClickListener listener)
Il metodo viene chiamato quando l'utente fa clic sul pulsante di pagamento di Google Pay.
Argomenti
| Nome | Descrizione |
|---|---|
listener |
Un callback del listener di eventi da chiamare quando viene inviato un evento di clic al pulsante di pagamento di Google Pay. |
BasePaymentDataCallbacksService
Classe di servizio di base che ospita i callback dei dati di pagamento avviati da Google Play Services
all'interno di un PaymentsClient.loadPaymentData(PaymentDataRequest) flusso.
Estendi questo servizio nella tua applicazione e dichiaralo in AndroidManifest.xml con l'autorizzazione com.google.android.gms.permission.BIND_PAYMENTS_CALLBACK_SERVICE e un filtro per intent per com.google.android.gms.wallet.callback.PAYMENT_DATA_CALLBACKS.
createPaymentDataCallbacks()
Restituisce un'implementazione di BasePaymentDataCallbacks
per gestire gli eventi di callback in entrata. Viene chiamato una volta per evento di callback.
BasePaymentDataCallbacks
Classe base astratta contenente i gestori di callback dei dati di pagamento implementati dal commerciante per supportare gli aggiornamenti dinamici dei prezzi e l'autorizzazione dei pagamenti.
onPaymentDataChanged(intermediatePaymentData, onCompleteListener)
Questo metodo gestisce le modifiche dei dati di pagamento nel foglio di pagamento, ad esempio l'indirizzo di spedizione e opzioni di spedizione.
Argomenti
| Nome | Tipo | Descrizione |
|---|---|---|
intermediatePaymentData |
IntermediatePaymentData |
Un oggetto che contiene l'indirizzo e l'opzione di spedizione selezionati nel
foglio di pagamento. Per i dettagli,
vedi IntermediatePaymentData. |
onCompleteListener |
OnCompleteListener<PaymentDataRequestUpdate> |
Un listener da risolvere con le informazioni aggiornate sulla transazione, le opzioni di spedizione e gli errori dei dati di pagamento. Passa un'istanza
PaymentDataRequestUpdate a complete(). |
Esempio
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)
Questo metodo viene chiamato quando un pagamento viene autorizzato nel foglio di pagamento.
Argomenti
| Nome | Tipo | Descrizione |
|---|---|---|
paymentData |
PaymentData |
Un oggetto che contiene i dati dell'acquirente richiesti. Per i dettagli,
consulta PaymentData. |
onCompleteListener |
OnCompleteListener<PaymentAuthorizationResult> |
Un listener da risolvere con il risultato dell'autorizzazione. Passa un'istanza PaymentAuthorizationResult a complete(). |
Esempio
override fun onPaymentAuthorized( paymentData: PaymentData, onCompleteListener: OnCompleteListener<PaymentAuthorizationResult> ) { val paymentAuthorizationResultJson = handlePaymentAuthorized(paymentData.toJson()) val result = PaymentAuthorizationResult.fromJson(paymentAuthorizationResultJson.toString()) onCompleteListener.complete(result) }
IntermediatePaymentData
Gestisci i dati di callback intermedi passati a BasePaymentDataCallbacks.onPaymentDataChanged.
toJson()
Genera i dati della richiesta di callback come stringa in formato JSON. Per ulteriori informazioni sulla struttura dell'oggetto JSON, consulta il riferimento all'oggetto IntermediatePaymentData.
getLastSavedState()
Restituisce il Bundle contenente lo stato salvato durante l'iterazione di callback precedente.
PaymentDataRequestUpdate
Crea un oggetto Java PaymentDataRequestUpdate da restituire in
BasePaymentDataCallbacks.onPaymentDataChanged.
fromJson(java.lang.String)
Crea un oggetto Java PaymentDataRequestUpdate da una stringa in formato JSON. Per la struttura prevista della stringa in formato JSON fornita, consulta il riferimento all'oggetto
PaymentDataRequestUpdate.
withUpdatedSavedState(Bundle)
Collega un Bundle di stato aggiornato da rendere persistente tra le invocazioni di callback.
PaymentAuthorizationResult
Crea un oggetto Java PaymentAuthorizationResult da restituire in
BasePaymentDataCallbacks.onPaymentAuthorized.
fromJson(java.lang.String)
Crea un oggetto Java PaymentAuthorizationResult da una stringa in formato JSON. Per la struttura prevista della stringa in formato JSON fornita, consulta il riferimento all'oggetto di risposta
PaymentAuthorizationResult.