Referência do cliente

A documentação de com.google.android.gms.wallet contém a documentação completa da biblioteca em várias versões da API Google Pay. Veja abaixo 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 de 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 se um usuário pode 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 uma forma de pagamento salva ou puder adicionar uma, IsReadyToPay vai retornar true. Para determinar se o usuário já salvou uma forma de pagamento no Google Pay, defina IsReadyToPayRequest.existingPaymentMethodRequired como true.

loadPaymentData(PaymentDataRequest)

Apresentar uma página de pagamento do Google Pay que permite selecionar 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 de uma string formatada em JSON. Consulte a referência do objeto PaymentDataRequest para ver a estrutura esperada da string formatada em JSON fornecida.

PaymentData

Processar uma resposta formatada em JSON da API Google Pay para uso no seu app.

toJson()

Gera 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 de conveniência é usado para inicializar um botão de pagamento do Google Pay estilizado com a marca mais recente do Google Pay.

Argumentos

Nome Descrição
buttonOptions Um objeto que configura o botão de pagamento do Google Pay. Consulte ButtonOptions para ver as 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 de conveniência define a visibilidade do botão de pagamento.

Argumentos

Nome Descrição
View

View.VISIBLE define o botão de pagamento como visível (padrão).

View.GONE oculta o botão dos usuários.

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 a ser chamado quando um evento de clique é enviado 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 de base abstrata que contém os gerenciadores de callback de dados de pagamento implementados pelo comerciante para oferecer suporte à determinação dinâmica de preços e autorização de pagamento.

onPaymentDataChanged(intermediatePaymentData, onCompleteListener)

Esse método processa mudanças nos dados de pagamento na página de pagamento, como endereço de entrega e opções de envio.

Argumentos

olá
Nome Tipo Descrição
intermediatePaymentData IntermediatePaymentData Um objeto que contém o endereço e a opção de envio selecionados na página de pagamento. Para mais detalhes, consulte 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 instância PaymentDataRequestUpdate 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)

Esse 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 solicitados do comprador. Para mais detalhes, consulte PaymentData.
onCompleteListener OnCompleteListener<PaymentAuthorizationResult> Um listener para resolver com o resultado da autorização. Transmita uma instância PaymentAuthorizationResult 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()

Mostra 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 ver a estrutura esperada da string formatada em JSON fornecida.

withUpdatedSavedState(Bundle)

Anexa um estado atualizado Bundle para persistir entre as 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 ver a estrutura esperada da string formatada em JSON fornecida.