A documentação do com.google.android.gms.wallet contém todos os documentos da biblioteca em várias versões da API Google Pay. Veja a seguir um resumo dos objetos e métodos mais aplicáveis à versão mais recente da API Google Pay: versão 2.0.
Carteira
Gere um PaymentsClient para um ambiente de teste ou produção.
Exemplo
mPaymentsClient = Wallet.getPaymentsClient( this, new Wallet.WalletOptions.Builder() .setEnvironment(WalletConstants.ENVIRONMENT_TEST) .build() );
PaymentsClient
Um cliente para interagir com as APIs do Google Pay.
isReadyToPay(IsReadyToPayRequest)
Use o método isReadyToPay(IsReadyToPayRequest) para determinar a capacidade de um usuário de
retornar uma forma de pagamento da API Google Pay.
Se o dispositivo for compatível com o Google Pay e o usuário já tiver salvo uma forma de pagamento ou puder
adicionar uma, IsReadyToPay retornará true. Para determinar se o usuário
já salvou uma forma de pagamento no Google Pay, defina
IsReadyToPayRequest.existingPaymentMethodRequired
como true.
loadPaymentData(PaymentDataRequest)
Apresente uma página de pagamento do Google Pay que permite a seleção de uma forma de pagamento e parâmetros configurados opcionalmente.
IsReadyToPayRequest
Crie um objeto Java IsReadyToPayRequest adequado para uso com PaymentsClient.isReadyToPay().
fromJson(java.lang.String)
Crie um objeto Java IsReadyToPayRequest de uma string formatada em JSON. Consulte a
referência do objeto IsReadyToPayRequest
para ver a estrutura esperada da string formatada em JSON fornecida.
PaymentDataRequest
Crie um objeto Java PaymentDataRequest adequado para uso com PaymentsClient.loadPaymentData.
fromJson(java.lang.String)
Crie um objeto Java PaymentDataRequest a partir de uma string formatada em JSON. Consulte a
referência do objeto PaymentDataRequest
para a estrutura esperada da string formatada em JSON fornecida.
PaymentData
Manipule uma resposta formatada em JSON da API Google Pay para uso no seu aplicativo.
toJson()
Saída de uma resposta da API Google Pay como uma string formatada em JSON. Consulte a referência do objeto PaymentData para mais informações sobre a estrutura do objeto JSON.
PayButton
public void initialize(ButtonOption buttonOptions)
O método prático é usado para inicializar um botão de pagamento do Google Pay com a marca mais recente do serviço.
Argumentos
| Nome | Descrição |
|---|---|
buttonOptions |
Um objeto que configura o botão de pagamento do Google Pay. Consulte ButtonOptions para propriedades configuráveis. |
Exemplo: inicializar o botão de pagamento com configurações personalizadas:
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)
O método prático define a visibilidade do botão de pagamento.
Argumentos
| Nome | Descrição |
|---|---|
View |
|
Exemplo:
payButton.setVisibility(View.VISIBLE);
public void setOnClickListener(View.OnClickListener listener)
O método é chamado quando o usuário clica no botão de pagamento do Google Pay.
Argumentos
| Nome | Descrição |
|---|---|
listener |
Um callback do listener de eventos para chamar quando um evento de clique for entregue ao botão de pagamento do Google Pay. |
BasePaymentDataCallbacksService
Classe de serviço base que hospeda os callbacks de dados de pagamento iniciados pelo Google Play Services
em um fluxo PaymentsClient.loadPaymentData(PaymentDataRequest).
Estenda esse serviço no aplicativo e declare-o no AndroidManifest.xml com a permissão com.google.android.gms.permission.BIND_PAYMENTS_CALLBACK_SERVICE e um filtro de intent para com.google.android.gms.wallet.callback.PAYMENT_DATA_CALLBACKS.
createPaymentDataCallbacks()
Retorna uma implementação de BasePaymentDataCallbacks
para processar eventos de callback recebidos. Chamado uma vez por evento de callback.
BasePaymentDataCallbacks
Classe base abstrata que contém os processadores de callback de dados de pagamento implementados pelo comerciante para oferecer suporte a atualizações dinâmicas de preços e autorização de pagamento.
onPaymentDataChanged(intermediatePaymentData, onCompleteListener)
Este método lida com alterações dos dados de pagamento na página de pagamento, como endereço de entrega e opções de envio.
Argumentos
| Nome | Tipo | Descrição |
|---|---|---|
intermediatePaymentData |
IntermediatePaymentData |
Um objeto que contém o endereço selecionado e a opção de envio em
the payment sheet. Para mais detalhes,
veja IntermediatePaymentData. |
onCompleteListener |
OnCompleteListener<PaymentDataRequestUpdate> |
Um listener para resolver com as informações de transação atualizadas, opções de envio e erros de dados de pagamento. Transmita uma
PaymentDataRequestUpdate instância para complete(). |
Exemplo
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)
Este método é chamado quando um pagamento é autorizado na página de pagamento.
Argumentos
| Nome | Tipo | Descrição |
|---|---|---|
paymentData |
PaymentData |
Um objeto que contém os dados do comprador solicitado. Para mais detalhes,
consulte PaymentData. |
onCompleteListener |
OnCompleteListener<PaymentAuthorizationResult> |
Um listener para resolver com o resultado da autorização. Transmita uma
PaymentAuthorizationResult instância para complete(). |
Exemplo
override fun onPaymentAuthorized( paymentData: PaymentData, onCompleteListener: OnCompleteListener<PaymentAuthorizationResult> ) { val paymentAuthorizationResultJson = handlePaymentAuthorized(paymentData.toJson()) val result = PaymentAuthorizationResult.fromJson(paymentAuthorizationResultJson.toString()) onCompleteListener.complete(result) }
IntermediatePaymentData
Processar dados de callback intermediários transmitidos para BasePaymentDataCallbacks.onPaymentDataChanged.
toJson()
Gera os dados da solicitação de callback como uma string formatada em JSON. Consulte a referência do objeto IntermediatePaymentData para mais informações sobre a estrutura do objeto JSON.
getLastSavedState()
Retorna o Bundle que contém o estado salvo durante a iteração de callback anterior.
PaymentDataRequestUpdate
Crie um objeto Java PaymentDataRequestUpdate para retornar em
BasePaymentDataCallbacks.onPaymentDataChanged.
fromJson(java.lang.String)
Crie um objeto Java PaymentDataRequestUpdate de uma string formatada em JSON. Consulte a
referência do objeto PaymentDataRequestUpdate
para a estrutura esperada da string formatada em JSON fornecida.
withUpdatedSavedState(Bundle)
Anexa um estado Bundle atualizado para persistir entre invocações de callback.
PaymentAuthorizationResult
Crie um objeto Java PaymentAuthorizationResult para retornar em
BasePaymentDataCallbacks.onPaymentAuthorized.
fromJson(java.lang.String)
Crie um objeto Java PaymentAuthorizationResult de uma string formatada em JSON. Consulte a
referência do objeto de resposta PaymentAuthorizationResult
para a estrutura esperada da string formatada em JSON fornecida.