import java.util.Properties plugins { alias(libs.plugins.android.application) alias(libs.plugins.kotlin.compose) } val properties = Properties().apply { load(File("signing.properties").reader()) } android { namespace = "com.kouros.navigation" compileSdk = 36 defaultConfig { applicationId = "com.kouros.navigation" minSdk = 33 targetSdk = 36 versionCode = 84 versionName = "0.2.0.84" base.archivesName = "navi-$versionName" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } signingConfigs { getByName("debug") { keyAlias = "release" keyPassword = properties.getProperty("keyPassword") storeFile = file(properties.getProperty("storeFile")) storePassword = properties.getProperty("storePassword") } create("release") { keyAlias = "release" keyPassword = properties.getProperty("keyPassword") storeFile = file(properties.getProperty("storeFile")) storePassword = properties.getProperty("storePassword") } } buildTypes { release { signingConfig = signingConfigs.getByName("release") isMinifyEnabled = false isShrinkResources = false proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) } } // Specifies one flavor dimension. flavorDimensions += "store" productFlavors { create("play") { dimension = "store" applicationIdSuffix = ".play" versionNameSuffix = "-play" } create("demo") { dimension = "store" applicationIdSuffix = ".demo" versionNameSuffix = "-demo" } create("full") { dimension = "store" applicationIdSuffix = ".full" versionNameSuffix = "-full" } } compileOptions { sourceCompatibility = JavaVersion.VERSION_21 targetCompatibility = JavaVersion.VERSION_21 } packaging { resources { excludes += setOf( "/META-INF/{AL2.0,LGPL2.1}", "/META-INF/*.version", ) } } buildFeatures { compose = true buildConfig = true } } dependencies { implementation(libs.androidx.core.ktx) implementation(libs.androidx.lifecycle.runtime.ktx) implementation(libs.androidx.ui) implementation(libs.androidx.material3) implementation(libs.androidx.runtime.livedata) implementation(libs.koin.androidx.compose) implementation(libs.maplibre.compose) implementation(libs.accompanist.permissions) implementation(project(":common:car")) implementation(project(":common:data")) implementation(libs.play.services.location) implementation(libs.androidx.compose.runtime) implementation(libs.androidx.navigation.compose) implementation(libs.androidx.compose.ui.tooling.preview) implementation(libs.androidx.compose.material3.window.size.class1) implementation(libs.androidx.compose.ui.graphics) implementation(libs.androidx.window) implementation(libs.androidx.compose.foundation.layout) implementation(libs.androidx.navigation.compose) implementation(libs.kotlinx.serialization.json) implementation(libs.androidx.compose.foundation.layout) implementation(libs.androidx.compose.foundation) testImplementation(libs.junit) androidTestImplementation(libs.androidx.junit) androidTestImplementation(libs.androidx.espresso.core) androidTestImplementation(platform(libs.androidx.compose.bom)) debugImplementation(libs.androidx.compose.ui.tooling) }