Ir para o conteúdo

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