Dependencias

Dependencias

En esta sección, encontrarás información sobre las versiones mínimas y la arquitectura recomendada para el uso del SDK de Menta.

ComponenteDescripción
SDK AndroidNuestro SDK es nativo. La versión nínima de SDK es 27 y el target SDK es 34
KotlinNuestro SDK usa la versión 1.9.0
Arquitectura i9100Para el modelo i9100 se recomienda usar armeabi-v7a.
Arquitectura i2000Para el modelo i2000 se recomienda usar arm64-v8a

Dependencias

En este apartado se detallan las dependencias que se deben importar:

DependenciaDescripción
Urovo NativeDependencia nativa del fabricante de la terminal (Urovo).
RestClientDependencia para el consumo de APIs dentro del SDK.
Common CrossDependencia para el intercambio interno de componentes.
EMV ReaderDependencia para procesar la lectura de tarjetas.
EMV ContractDependencia que define las interfaces del kernel EMV y de impresión, compartidas por el resto de los módulos.
Core PaymentDependencia que maneja el core para procesar transacciones. A partir de la v7.6.0 también incluye la administración de llaves y seguridad (antes en Keys Admin).
ℹ️

Acceder al repositorio del SDK para tomar las últimas versiones de librerías disponibles.

Dependencias de Menta

Las dependencias de Menta son archivos .aar y deben ir dentro de la carpeta /libs del proyecto: Drag Racing

    //Menta dependencies
    implementation(files("libs/com_menta_android_emv_i9100_urovo-native_1.0.24_urovo-native-1.0.24.aar"))
    implementation(files("libs/com_menta_android_common_cross_common-cross_4.1.8_common-cross-4.1.8.aar"))
    implementation(files("libs/com_menta_android_emv_i9100_reader_reader_4.2.1_reader-4.2.1.aar"))
    implementation(files("libs/com_menta_android_core_core_payment_7.6.3_core_payment-7.6.3.aar"))
    implementation(files("libs/com_menta_android_emv_contract_contract_1.0.1_contract-1.0.1.jar"))
Otras dependencias
 
    android {
        compileOptions {
            isCoreLibraryDesugaringEnabled = true //Requerido para usar Google Services
        }
    }
 
    val retrofitVersion: String by project
    val okhttpBomVersion: String by project
    val roomVersion: String by project
 
    //Retrofit
    implementation("com.squareup.retrofit2:retrofit:$retrofitVersion")
    implementation("com.squareup.retrofit2:converter-gson:$retrofitVersion")
 
    //OkhttpBomVersion
    implementation(platform("com.squareup.okhttp3:okhttp-bom:$okhttpBomVersion"))
    implementation("com.squareup.okhttp3:okhttp")
    implementation("com.squareup.okhttp3:logging-interceptor")
 
    //Security
    implementation("androidx.security:security-crypto:1.1.0-alpha06")
    implementation("org.bouncycastle:bcpkix-jdk15on:1.69")
    implementation("commons-codec:commons-codec:1.16.1")
 
    //Room database
    implementation("androidx.room:room-ktx:$roomVersion")
 
    //Google Services
    coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:2.1.5")

Estas dependencias y sus ejemplos de implementación se pueden descargar en el siguiente repositorio (opens in a new tab)