Getnet DocsGetnet Docs

Configuración de la integración HAL

Esta guía cubre las tres cosas que tu Manufacturer Service App necesita antes de que la Middleware App pueda vincularse a ella. Necesitas el nombre de paquete correcto, las interfaces requeridas y una declaración de servicio que coincida con el Intent de vinculación.

Antes de empezar

Consigue libhalservice.aar de Getnet. Contiene las interfaces AIDL que implementas: consulta la referencia de interfaces de servicio para ver la lista completa antes de comenzar.

Paso 1: Nombrar el paquete de tu servicio

La Middleware App solo se vincula a un servicio llamado com.pagonxt.hal.platform.service. Usa este nombre exacto para tu Manufacturer Service App.

Paso 2: Implementar las interfaces requeridas

libhalservice.aar define una interfaz por área de hardware. Implementa las que tu dispositivo soporte:

InterfazCubre
IMainServiceEl punto de entrada. Expone todas las demás interfaces de abajo.
ICardServiceLecturas de tarjeta por chip, banda magnética y NFC.
IMifareServiceLecturas de tarjeta Mifare y operaciones de sector/bloque.
IPrinterServiceImpresión de recibos.
IBeeperServiceRetroalimentación sonora.
ILedServiceLED de estado.
ICameraServiceCámara del dispositivo.
IStatServiceEstadísticas de uso, por aplicación y a nivel de dispositivo.
IInfoServiceIdentificación del dispositivo (número de serie, IMEI, modelo).

libhalservice.aar también declara un import de IInitService, junto a las interfaces anteriores. El kit de fabricante de Getnet todavía no documenta sus métodos: trátalo como reservado hasta que Getnet publique su contrato.

Consulta la referencia de interfaces de servicio para ver todas las firmas de métodos, incluidas las interfaces de mantenimiento y de cifrado. También documenta la interfaz EMV que usa la máquina de estados EMV.

Paso 3: Coincidir con el Intent de vinculación

La Middleware App se vincula a tu servicio con este Intent:

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

Declara el intent filter de tu servicio para que coincida con esta acción y este paquete, de modo que la vinculación tenga éxito. Una vez vinculada, la Middleware App obtiene tu implementación de IMainService así:

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

Todas las llamadas que tu servicio recibe después — mainService.getCard(), mainService.getPrinter(), y así sucesivamente — pasan por esta misma conexión.

Verificar la integración

Confirma que tu servicio es vinculable y que todas las interfaces implementadas responden correctamente antes de pasar al Devkit.

ComprobaciónQué esperar
Nombre de paqueteEl manifiesto de tu servicio declara com.pagonxt.hal.platform.service.
VinculaciónLa vinculación de la Middleware App tiene éxito y devuelve un stub IMainService válido.
Cobertura de interfacesTodas las interfaces que tu dispositivo soporta (ver Paso 2) devuelven una implementación funcional, no null.

Próximos pasos