Conexão¶
Estabelecendo Conexão¶
Warning
O bind é necessário para estabelecer a comunicação entre o app de integração e o app pix. Todas as outras funções devem ser executadas apenas após o bind ter sido realizado.
val pixClient = PixClient(context)
val bindCallback = object : PixClient.BindCallback {
override fun onServiceConnected() {
println("Conectado")
}
override fun onServiceDisconnected() {
println("Desconectado")
}
}
pixClient.bind(bindCallback)
Caso seja necessário verificar se a conexão ainda está ativa, pode ser utilizado a função isBound:
val pixClient = PixClient(context)
val bound = pixClient.isBound()
println(bound)
No final da execução da aplicação é necessário que a conexão seja encerrada, para isso, utilizar o método unbind
val pixClient = PixClient(context)
pixClient.unbind()
Respostas de sucesso e erro¶
O app que está integrando sempre receberá uma string no formato json tanto no
onSuccess como no onError. As estruturas das respostas são:
// resposta de sucesso
{
"tx_id": "b849b36b-7846-48f8-81ce-a8dbf2530f42",
"cob_value": "20.00",
"status": "CONCLUIDA",
}
// resposta de erro
{
"error_message": "Erro ao gerar cobrança"
}
Verificar se o app pix está instalado¶
isAppPixInstalled()¶
Para uso da integração, além do sdk é necessário que o terminal possua o aplicativo de pagamentos PIX, com isso o sdk possui uma função que retorna um booleano verificando se o aplicativo do pix está ou não instalado
val pixClient = PixClient(context)
val pixInstalled = pixClient.isAppPixInstalled()
println(pixInstalled) // true ou false