import java.util.Properties plugins { id("com.android.application") id("org.jetbrains.kotlin.android") id("org.jetbrains.kotlin.plugin.serialization") id("com.google.devtools.ksp") } // Подпись релиза: android/keystore.properties (не в git). Без него release собирается неподписанным. val keystoreProps = Properties().apply { val f = rootProject.file("keystore.properties") if (f.exists()) f.inputStream().use { load(it) } } android { namespace = "ru.checklists.app" compileSdk = 34 defaultConfig { applicationId = "ru.checklists.app" minSdk = 26 targetSdk = 34 versionCode = 16 versionName = "1.10.0" } signingConfigs { if (keystoreProps.containsKey("storeFile")) { create("release") { storeFile = rootProject.file(keystoreProps.getProperty("storeFile")) storePassword = keystoreProps.getProperty("storePassword") keyAlias = keystoreProps.getProperty("keyAlias") keyPassword = keystoreProps.getProperty("keyPassword") enableV1Signing = true // подписи v1+v2+v3: максимальная совместимость при установке enableV2Signing = true enableV3Signing = true } } } buildTypes { release { isMinifyEnabled = false signingConfigs.findByName("release")?.let { signingConfig = it } } } buildFeatures { compose = true buildConfig = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.14" } compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } kotlinOptions { jvmTarget = "17" } packaging { resources.excludes += "/META-INF/{AL2.0,LGPL2.1}" } } dependencies { implementation(platform("androidx.compose:compose-bom:2024.06.00")) implementation("androidx.compose.ui:ui") implementation("androidx.compose.ui:ui-tooling-preview") implementation("androidx.compose.material3:material3") implementation("androidx.compose.material:material-icons-core") implementation("androidx.compose.foundation:foundation") debugImplementation("androidx.compose.ui:ui-tooling") implementation("androidx.core:core-ktx:1.13.1") implementation("androidx.activity:activity-compose:1.9.0") implementation("androidx.lifecycle:lifecycle-runtime-compose:2.8.2") implementation("androidx.navigation:navigation-compose:2.7.7") implementation("androidx.exifinterface:exifinterface:1.3.7") implementation("androidx.security:security-crypto:1.1.0-alpha06") implementation("androidx.room:room-runtime:2.6.1") implementation("androidx.room:room-ktx:2.6.1") ksp("androidx.room:room-compiler:2.6.1") implementation("androidx.work:work-runtime-ktx:2.9.0") implementation("com.squareup.okhttp3:okhttp:4.12.0") implementation("com.squareup.retrofit2:retrofit:2.11.0") implementation("com.jakewharton.retrofit:retrofit2-kotlinx-serialization-converter:1.0.0") implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.3") implementation("io.coil-kt:coil-compose:2.6.0") }