Getnet DocsGetnet Docs

Añadir el framework/biblioteca iTPV-PC a tu proyecto

Esta guía explica cómo añadir el framework/biblioteca iTPV-PC de Get Mini Android (SDK) a tu proyecto de Android. El framework se distribuye como una biblioteca JAR local que se integra directamente en tu aplicación y se comunica con un dispositivo PIN pad certificado externo.

Los pasos a continuación siguen el modelo de integración oficial de iTPV-PC tal como se documenta en el manual del framework.


Requisitos

Antes de añadir el SDK a tu proyecto, asegúrate de lo siguiente:

  • Android Studio configurado para el desarrollo de aplicaciones Android.
  • Compatibilidad con Java 8 (o superior) habilitada en tu proyecto (recomendado; este requisito no se especifica explícitamente en el manual del SDK).
  • Un dispositivo Android compatible con el PIN pad de Get Mini.
  • El archivo JAR del SDK iTPV-PC proporcionado por tu contacto técnico de Get Mini.

Paso 1: Añadir el JAR del SDK a tu proyecto

El SDK iTPV-PC se distribuye como un archivo JAR. Para incluirlo en tu proyecto:

  1. En el explorador de proyectos (“Package Explorer”) de Android Studio, selecciona y expande el proyecto de tu aplicación (normalmente app/).
  2. Comprueba si existe una carpeta libs/. Si no, crea una en app/libs/.
  3. Añade el archivo JAR del SDK a la carpeta libs/ arrastrándolo y soltándolo, o copiando y pegando el archivo.

La estructura de tu proyecto debería verse así:

app/
 └── libs/
     └── <nombre-del-jar-del-sdk>.jar

Una vez que el archivo JAR esté en la carpeta libs/, tendrás acceso a todas las funcionalidades del SDK desde tu proyecto.


Paso 2: Configurar dependencias

Para que el inicio de sesión funcione correctamente, es necesario incluir la dependencia de BouncyCastle y Gson en el archivo build.gradle a nivel de aplicación. Sin esta dependencia, es posible que veas errores del proveedor criptográfico (como NoSuchAlgorithmException) o errores de análisis JSON durante el inicio de sesión. Añade lo siguiente:

dependencies {
    // SDK iTPV-PC (JAR local)
    implementation files('libs/<nombre-del-jar-del-sdk>.jar')

    // Dependencias requeridas para el inicio de sesión
    implementation(group: 'org.bouncycastle', name: 'bcprov-jdk16', version: '1.45')
    implementation 'com.google.code.gson:gson:2.8.5'
}

Sincroniza tu proyecto con Gradle después de añadir estas dependencias.


Paso 3: Configurar la compatibilidad con Java

Asegúrate de que tu proyecto esté configurado para utilizar Java 8 o superior. Añade o verifica lo siguiente en tu archivo app/build.gradle:

android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    // Si usa Kotlin
    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Este requisito de compatibilidad con Java 8 no se documenta explícitamente en el manual del SDK, pero se recomienda para evitar errores de compilación.


Paso 4: Verificar la integración

Después de sincronizar tu proyecto, verifica que el SDK esté correctamente integrado importando una clase principal de iTPV-PC en tu código:

import redcls.itpvpc.RedCLSPinPadManager;
import redcls.itpvpc.RedCLSMerchantConfigurationManager;
import redcls.itpvpc.RedCLSConfigurationLibrary;

Si Android Studio reconoce estas importaciones sin errores, el SDK se ha añadido con éxito a tu proyecto.


Opcional: Configuración de ProGuard/R8

Si tu proyecto utiliza reducción de código (minifyEnabled true), es posible que quieras añadir reglas de mantenimiento para las clases del SDK para evitar problemas de ofuscación. Añade lo siguiente a tu archivo proguard-rules.pro:

## SDK iTPV-PC
-keep class redcls.itpvpc.** { *; }
-keep interface redcls.itpvpc.** { *; }
-dontwarn redcls.itpvpc.**

## Dependencias requeridas
-keep class org.bouncycastle.** { *; }
-dontwarn org.bouncycastle.**

Estas reglas de ProGuard son opcionales y no se requieren explícitamente en la documentación del SDK, pero pueden ayudar a prevenir problemas en las versiones de lanzamiento (release).


Solución de problemas

Error de Compilación: Clase No Encontrada

  • Verifica que el archivo JAR se encuentre en app/libs/.
  • Asegúrate de que el archivo JAR esté referenciado correctamente en las dependencias de tu build.gradle.
  • Sincroniza el proyecto de nuevo (File → Sync Project with Gradle Files).

Importación No Reconocida

  • Invalida las cachés de Android Studio (File → Invalidate Caches / Restart).
  • Asegúrate de que el archivo JAR no esté dañado.
  • Verifica que estés utilizando la versión correcta del SDK para tu integración.

Errores de Resolución de Dependencias

  • Asegúrate de tener conectividad a Internet para descargar las dependencias de BouncyCastle y Gson.
  • Comprueba que los repositorios de tu proyecto incluyan mavenCentral() o jcenter().
  • Verifica las versiones exactas de las dependencias especificadas en la documentación del SDK.

Convención de nombres de clases del SDK

El manual de integración no documenta una jerarquía de paquetes específica para el SDK. Las clases principales del framework siguen la convención de nombres con el prefijo RedCLS, como RedCLSPinPadManager, RedCLSConfigurationLibrary y RedCLSMerchantConfigurationManager. Consulta el manual de integración del SDK para conocer la lista completa de clases disponibles.


Próximos pasos

Con el SDK de Get Mini añadido a tu proyecto, continúa con las siguientes guías: