import java.util.Properties import java.io.FileInputStream plugins { id("com.android.application") id("kotlin-android") id("com.google.gms.google-services") version "4.4.1" // Add the version here id("dev.flutter.flutter-gradle-plugin") id("com.huawei.agconnect") // id("com.mapbox.gradle.application") // id("com.mapbox.gradle.plugins.ndk") } val keystoreProperties = Properties() val keystorePropertiesFile = rootProject.file("key.properties") if (keystorePropertiesFile.exists()) { keystoreProperties.load(FileInputStream(keystorePropertiesFile)) } android { namespace = "com.ejada.hmg" compileSdk = 36 ndkVersion = "28.2.13676358" defaultConfig { applicationId = "com.ejada.hmg" // minSdk = 24 minSdk = 26 targetSdk = 35 compileSdk = 35 // targetSdk = flutter.targetSdkVersion versionCode = flutter.versionCode versionName = flutter.versionName multiDexEnabled = true } buildFeatures { viewBinding = true dataBinding = true } sourceSets { // getByName("main") { // java.srcDirs += "src/main/kotlin" // jniLibs.srcDir("src/main/libs") // jni.srcDirs = listOf() // disables automatic ndk-build // } getByName("main") { java.srcDir("src/main/kotlin") jniLibs.srcDir("src/main/libs") // To disable automatic ndk-build, do not set jni.srcDirs // If you need to clear jni.srcDirs: // set("jni.srcDirs", emptyList()) } } signingConfigs { create("release") { keyAlias = keystoreProperties.getProperty("keyAlias") keyPassword = keystoreProperties.getProperty("keyPassword") storeFile = keystoreProperties.getProperty("storeFile")?.let { file(it) } storePassword = keystoreProperties.getProperty("storePassword") } } buildTypes { getByName("debug") { isDebuggable = true signingConfig = signingConfigs.getByName("debug") isMinifyEnabled = false isShrinkResources = false } getByName("release") { isDebuggable = false signingConfig = signingConfigs.getByName("release") isMinifyEnabled = true isShrinkResources = true proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro") } create("staging") { matchingFallbacks += listOf("debug", "qa", "release") } } packagingOptions { jniLibs { pickFirsts += listOf( "lib/x86/libc++_shared.so", "lib/x86_64/libc++_shared.so", "lib/armeabi-v7a/libc++_shared.so", "lib/arm64-v8a/libc++_shared.so", "**/*.so" ) useLegacyPackaging = true } resources { excludes += listOf("META-INF/proguard/androidx-annotations.pro") } } compileOptions { sourceCompatibility = JavaVersion.VERSION_21 targetCompatibility = JavaVersion.VERSION_21 isCoreLibraryDesugaringEnabled = true } // kotlinOptions { // jvmTarget = "17" // } lint { disable += "MissingTranslation" checkReleaseBuilds = false } } flutter { source = "../.." } dependencies { implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.20") implementation("com.google.firebase:firebase-messaging:24.1.2") implementation("pub.devrel:easypermissions:3.0.0") implementation("com.google.guava:guava:33.4.0-android") implementation(fileTree(mapOf("dir" to "libs", "include" to listOf("*.jar"), "exclude" to listOf("bcprov-jdk16-1.46.jar")))) implementation("com.google.code.gson:gson:2.12.0") // Zoom SDKs implementation("us.zoom.videosdk:zoomvideosdk-core:1.12.10") implementation("us.zoom.videosdk:zoomvideosdk-annotation:1.12.10") implementation("us.zoom.videosdk:zoomvideosdk-videoeffects:1.12.10") // Networking implementation("com.squareup.okhttp3:logging-interceptor:5.0.0-alpha.11") implementation("com.squareup.okhttp3:okhttp:5.0.0-alpha.11") implementation("com.squareup.retrofit2:retrofit:2.11.0") implementation("com.squareup.retrofit2:converter-gson:2.11.0") implementation("com.squareup.retrofit2:adapter-java8:2.11.0") // Google Services implementation("com.google.android.gms:play-services-location:21.3.0") implementation("com.google.android.gms:play-services-basement:18.7.0") implementation("com.android.volley:volley:1.2.1") implementation("androidx.constraintlayout:constraintlayout:2.2.1") implementation("androidx.navigation:navigation-fragment-ktx:2.9.0") implementation("androidx.navigation:navigation-ui-ktx:2.9.0") implementation("androidx.activity:activity-ktx:1.10.1") // val room_version = "2.6.1" // implementation("androidx.room:room-runtime:$room_version") // annotationProcessor("androidx.room:room-compiler:$room_version") implementation("net.zetetic:android-database-sqlcipher:4.5.4") implementation("com.intuit.ssp:ssp-android:1.1.0") implementation("com.intuit.sdp:sdp-android:1.1.0") // implementation("com.github.bumptech.glide:glide:4.16.0") // annotationProcessor("com.github.bumptech.glide:compiler:4.16.0") implementation("com.mapbox.maps:android:11.5.0") // implementation("com.mapbox.maps:android:11.4.0") // AARs // implementation(files("libs/PenNavUI.aar")) // implementation(files("libs/Penguin.aar")) // implementation(files("libs/PenguinRenderer.aar")) implementation("com.github.kittinunf.fuel:fuel:2.3.1") implementation("com.github.kittinunf.fuel:fuel-android:2.3.1") // implementation("com.opentok.android:opentok-android-sdk:2.25.2") // implementation("com.facebook.stetho:stetho:1.6.0") // implementation("com.facebook.stetho:stetho-urlconnection:1.6.0") implementation("androidx.core:core-ktx:1.16.0") implementation("androidx.appcompat:appcompat:1.7.1") implementation("com.google.android.material:material:1.12.0") implementation("pl.droidsonroids.gif:android-gif-drawable:1.2.25") androidTestImplementation("androidx.test:core:1.6.1") implementation("com.whatsapp.otp:whatsapp-otp-android-sdk:0.1.0") coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:2.1.5") // implementation(project(":vitalSignEngine")) }