plugins { alias(libs.plugins.android.application) alias(libs.plugins.kotlin.android) alias(libs.plugins.hilt.android) alias(libs.plugins.kotlin.kapt) alias(libs.plugins.navigation) } android { namespace 'com.utsmm.kbz' compileSdk 34 defaultConfig { applicationId "com.utsmm.kbz" minSdk 24 targetSdk 33 versionCode 5 versionName "1.05" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" // // Add CMake configuration // externalNativeBuild { // cmake { // cppFlags "-std=c++14" // } // } } // Configure CMake // externalNativeBuild { // cmake { // path "src/main/cpp/CMakeLists.txt" // version "3.22.1" // } // } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } compileOptions { sourceCompatibility JavaVersion.VERSION_11 targetCompatibility JavaVersion.VERSION_11 } kotlinOptions { jvmTarget = '11' } dataBinding { enabled = true } buildFeatures { buildConfig = true } packagingOptions { pickFirst '**/libnative-lib.so' pickFirst '**/libxgd_ddi_jni.so' } // Configure native library loading sourceSets { main { jniLibs.srcDirs = ['src/main/jniLibs'] } } } // Exclude old Kotlin stdlib variants to prevent duplicate classes configurations.all { exclude group: 'org.jetbrains.kotlin', module: 'kotlin-stdlib-jdk7' exclude group: 'org.jetbrains.kotlin', module: 'kotlin-stdlib-jdk8' } // Configure kapt for annotation processing kapt { correctErrorTypes true arguments { arg("room.schemaLocation", "$projectDir/schemas") arg("room.incremental", "true") arg("room.expandProjection", "true") } } dependencies { implementation fileTree(include: ['*.jar', '*.aar'], dir: 'libs') def nav_version = "2.3.2" def lottieVersion = "3.5.0" def fragment_version = "1.2.0" def espressoVersion = "3.3.0" def testJunitVersion = "1.1.5" def androidXTestVersion0 = "1.2.0" def testRunnerVersion = "1.5.2" def testRulesVersion = "1.5.0" // def nav_version = "2.4.1" implementation 'com.android.support:multidex:1.0.3' // QR // implementation 'androidmads.library.qrgenearator:QRGenearator:1.0.5' // QR Scan implementation 'com.journeyapps:zxing-android-embedded:4.3.0' implementation "androidx.lifecycle:lifecycle-common-java8:2.3.1" //1.2.0 implementation 'androidx.appcompat:appcompat:1.3.1' //1.2.0 implementation 'com.google.android.material:material:1.4.0' //1.2.1 implementation 'androidx.constraintlayout:constraintlayout:2.0.4' //2.0.4 implementation 'com.github.denzcoskun:ImageSlideshow:0.1.2' //signature implementation 'com.github.gcacace:signature-pad:1.3.1' //lottie implementation "com.airbnb.android:lottie:$lottieVersion" implementation "androidx.cardview:cardview:1.0.0" //Stetho implementation 'com.facebook.stetho:stetho:1.5.1' //Navigation Component implementation "androidx.navigation:navigation-fragment:$nav_version" implementation "androidx.navigation:navigation-ui:$nav_version" // Room dependencies implementation "androidx.room:room-runtime:2.4.3" //2.2.5 implementation 'androidx.preference:preference:1.1.1' implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0' implementation 'androidx.legacy:legacy-support-v4:1.0.0' // kapt "androidx.room:room-compiler:2.4.3" implementation "androidx.room:room-rxjava3:2.4.3" // Hilt Dependencies implementation libs.hilt.android kapt libs.hilt.compiler kapt libs.androidx.hilt.compiler // Basic dependency injection support for javax.inject implementation 'javax.inject:javax.inject:1' //OKHttp 4.8.1 implementation("com.squareup.okhttp3:logging-interceptor:4.8.1") implementation("com.squareup.okhttp3:okhttp:4.8.1") //RxJava implementation 'io.reactivex.rxjava3:rxandroid:3.0.0' implementation 'io.reactivex.rxjava3:rxjava:3.0.0' // Retrofit implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.retrofit2:converter-gson:2.9.0' implementation "com.github.akarnokd:rxjava3-retrofit-adapter:3.0.0" // ViewModel implementation 'androidx.lifecycle:lifecycle-viewmodel:2.2.0' // LiveData implementation 'androidx.lifecycle:lifecycle-livedata:2.2.0' //base64 implementation 'commons-codec:commons-codec:1.15' //bouncy castle implementation 'org.bouncycastle:bcpkix-jdk15on:1.56' implementation 'com.squareup.picasso:picasso:2.71828' implementation 'com.sunmi:printerlibrary:1.0.23' // implementation 'com.sunmi:sunmiui:1.1.27' //1.1.27 implementation project(path: ':ecr-service-lib') implementation project(path: ':paylibs') implementation project(path: ':mpulib') implementation project(path: ':baselib') implementation project(path: ':paysdk-lib') implementation project(path: ':nexsdk-lib') implementation project(path: ':qrgen-lib') implementation project(path: ':xpay') // implementation project(path: ':sunmiui-lib') implementation project(path: ':qrgen-lib') //// implementation project(path: ':samlSirius') implementation project(path: ':ecr') testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test.ext:junit:1.1.2' // 1.1.2 androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' androidTestImplementation 'androidx.test.espresso:espresso-contrib:3.3.0' // Add Mockito dependency for mocking testImplementation 'org.mockito:mockito-core:3.12.4' androidTestImplementation 'org.mockito:mockito-android:3.12.4' testImplementation 'org.powermock:powermock-api-mockito2:2.0.9' testImplementation 'org.powermock:powermock-module-junit4:2.0.9' }