Gerenciar com os Resultados da Transação
Este guia orienta você sobre como lidar com os resultados de transação retornados pelo aplicativo Get Mini. Você aprenderá como registrar um retorno de chamada (callback) de resultado, verificar o código de resultado e extrair dados da transação da resposta.
Requisitos
Antes de seguir os passos, certifique-se de ter:
- Concluído uma transação usando Processar um pagamento, Estornar um pagamento ou Operações de consulta
- ActivityResultLauncher devidamente registrado em sua Activity ou Fragment
Sempre registre seu result launcher antes de iniciar qualquer Intent de transação.
Processo de Tratamento de Resultados
Esta seção orienta você na implementação do callback de resultado para processar as respostas de transação do aplicativo Get Mini.
Passo 1: Registrar o Activity Result Launcher
Registre um ActivityResultLauncher no método onCreate() da sua Activity ou na inicialização do Fragment. Este launcher receberá o retorno de chamada quando o aplicativo Get Mini concluir a transação.
O código a seguir mostra como registrar o launcher:
ActivityResultLauncher<Intent> paymentLauncher = registerForActivityResult(
new ActivityResultContracts.StartActivityForResult(),
result -> {
// Handle the result here
handleTransactionResult(result);
}
);Passo 2: Verificar o Código de Resultado
Quando o aplicativo Get Mini retorna o controle para o seu aplicativo, primeiro verifique o código de resultado. Um código de resultado de RESULT_OK indica que a operação foi concluída com sucesso, enquanto RESULT_CANCELED indica que ela foi cancelada ou falhou.
private void handleTransactionResult(ActivityResult result) {
if (result.getResultCode() == Activity.RESULT_OK) {
// Transaction successful
processSuccessfulTransaction(result.getData());
} else if (result.getResultCode() == Activity.RESULT_CANCELED) {
// Transaction cancelled or failed
processFailedTransaction(result.getData());
}
}Passo 3: Extrair Dados da Transação
Extraia os dados relevantes dos extras do Intent com base no tipo de operação. Para pagamentos bem-sucedidos, você receberá números de autorização e caminhos de recibos. Para falhas, você receberá mensagens de erro e códigos de estado.
private void processSuccessfulTransaction(Intent data) {
if (data != null) {
String authNumber = data.getStringExtra("AUTHORIZATION_NUMBER");
String order = data.getStringExtra("ORDER");
String state = data.getStringExtra("STATE");
// Display success message
showSuccessMessage("Payment approved. Auth: " + authNumber);
}
}
private void processFailedTransaction(Intent data) {
if (data != null) {
String errorMsg = data.getStringExtra("ERROR_MSG");
String state = data.getStringExtra("STATE");
// Display error message
showErrorMessage("Transaction failed: " + errorMsg);
}
}Mesmo quando o código de resultado é RESULT_CANCELED, os extras do Intent frequentemente contêm informações valiosas de depuração nos campos ERROR_MSG e STATE. Sempre analise os extras para fornecer um feedback significativo ao usuário.
Próximos Passos
Agora que você sabe como lidar com os resultados da transação, você pode:
- Revisar Códigos de resultado e erros para obter uma lista completa de campos de resposta
- Aprender sobre Gerenciamento de recibos para exibir recibos de transação
- Implementar Gerenciar a disponibilidade do aplicativo para verificar se o aplicativo Get Mini está instalado