Getnet DocsGetnet Docs

Configuração da integração HAL

Este guia cobre as três coisas de que sua Manufacturer Service App precisa antes de a Middleware App conseguir se vincular a ela. Você precisa do nome de pacote correto, das interfaces exigidas e de uma declaração de serviço que corresponda ao Intent de vinculação.

Antes de começar

Obtenha o libhalservice.aar com a Getnet. Ele contém as interfaces AIDL que você implementa — consulte a referência de interfaces de serviço para ver a lista completa antes de começar.

Etapa 1: Nomear o pacote do seu serviço

A Middleware App só se vincula a um serviço chamado com.pagonxt.hal.platform.service. Use exatamente esse nome para sua Manufacturer Service App.

Etapa 2: Implementar as interfaces exigidas

O libhalservice.aar define uma interface por área de hardware. Implemente as que seu dispositivo suporta:

InterfaceCobre
IMainServiceO ponto de entrada. Expõe todas as demais interfaces abaixo.
ICardServiceLeituras de cartão por chip, tarja magnética e NFC.
IMifareServiceLeituras de cartão Mifare e operações de setor/bloco.
IPrinterServiceImpressão de recibos.
IBeeperServiceRetorno sonoro.
ILedServiceLEDs de status.
ICameraServiceCâmera do dispositivo.
IStatServiceEstatísticas de uso, por aplicação e no dispositivo inteiro.
IInfoServiceIdentificação do dispositivo (número de série, IMEI, modelo).

O libhalservice.aar também declara um import de IInitService, ao lado das interfaces acima. O kit de fabricante da Getnet ainda não documenta seus métodos — trate-o como reservado até a Getnet publicar o contrato dele.

Consulte a referência de interfaces de serviço para ver todas as assinaturas de método, incluindo as interfaces de manutenção e de criptografia. Ela também documenta a interface EMV usada pela máquina de estados EMV.

Etapa 3: Corresponder ao Intent de vinculação

A Middleware App se vincula ao seu serviço com este Intent:

intent.action = "com.pagonxt.hal.platform.service"
intent.setPackage("com.pagonxt.hal.platform")

Declare o intent filter do seu serviço para corresponder a essa ação e a esse pacote, para que a vinculação tenha sucesso. Uma vez vinculada, a Middleware App obtém sua implementação de IMainService assim:

mainService = com.pagonxt.hal.platform.service.IMainService.Stub.asInterface(binder)

Todas as chamadas que seu serviço recebe depois — mainService.getCard(), mainService.getPrinter() e assim por diante — passam por essa mesma conexão.

Verificar a integração

Confirme que seu serviço é vinculável e que todas as interfaces implementadas respondem corretamente antes de passar ao Devkit.

VerificaçãoO que esperar
Nome de pacoteO manifesto do seu serviço declara com.pagonxt.hal.platform.service.
VinculaçãoA vinculação da Middleware App tem sucesso e devolve um stub IMainService válido.
Cobertura de interfacesToda interface que seu dispositivo suporta (ver Etapa 2) devolve uma implementação funcional, não null.

Próximos passos