build.gradle.kts 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. @Suppress("DSL_SCOPE_VIOLATION") // TODO: Remove once KTIJ-19369 is fixed
  2. plugins {
  3. alias(libs.plugins.android.application)
  4. alias(libs.plugins.org.jetbrains.kotlin.android)
  5. alias(libs.plugins.com.google.devtools.ksp)
  6. alias(libs.plugins.dagger.hilt)
  7. }
  8. android {
  9. namespace = "com.codeskraps.weather"
  10. compileSdk = ConfigData.compileSdk
  11. defaultConfig {
  12. applicationId = "com.arklan.weather"
  13. minSdk = ConfigData.minSdk
  14. targetSdk = ConfigData.targetSdk
  15. versionCode = 13
  16. versionName = "2.3"
  17. setProperty("archivesBaseName", "weekly-weather-v$versionName.$versionCode")
  18. testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
  19. vectorDrawables {
  20. useSupportLibrary = true
  21. }
  22. }
  23. buildTypes {
  24. release {
  25. isMinifyEnabled = true
  26. proguardFiles(
  27. getDefaultProguardFile("proguard-android-optimize.txt"),
  28. "proguard-rules.pro"
  29. )
  30. }
  31. debug {
  32. isMinifyEnabled = false
  33. applicationIdSuffix = ".debug"
  34. versionNameSuffix = "-DEBUG"
  35. }
  36. }
  37. compileOptions {
  38. sourceCompatibility = ConfigData.javaVersion
  39. targetCompatibility = ConfigData.javaVersion
  40. }
  41. kotlinOptions {
  42. jvmTarget = ConfigData.javaTarget
  43. }
  44. buildFeatures {
  45. compose = true
  46. }
  47. composeOptions {
  48. kotlinCompilerExtensionVersion = ConfigData.kotlinCompiler
  49. }
  50. packaging {
  51. resources {
  52. excludes += "/META-INF/{AL2.0,LGPL2.1}"
  53. }
  54. }
  55. hilt {
  56. enableAggregatingTask = true
  57. }
  58. }
  59. dependencies {
  60. implementation(project(mapOf("path" to ":feature:common")))
  61. implementation(project(mapOf("path" to ":feature:geocoding")))
  62. implementation(project(mapOf("path" to ":feature:weather")))
  63. implementation(project(mapOf("path" to ":feature:maps")))
  64. implementation(libs.androidx.core.ktx)
  65. implementation(libs.androidx.lifecycle.runtime.ktx)
  66. implementation(libs.androidx.activity.compose)
  67. implementation(libs.androidx.navigation.compose)
  68. implementation(libs.androidx.lifecycle.runtime.compose)
  69. implementation(libs.android.compose.material3)
  70. val composeBom = platform(libs.androidx.compose.bom)
  71. implementation(composeBom)
  72. implementation(libs.androidx.compose.ui)
  73. implementation(libs.androidx.compose.graphics)
  74. implementation(libs.androidx.compose.tooling.preview)
  75. //Dagger - Hilt
  76. implementation(libs.hilt.android)
  77. implementation(libs.hilt.navigation.compose)
  78. ksp(libs.hilt.android.compiler)
  79. implementation(libs.coroutines.test)
  80. testImplementation(libs.junit.junit)
  81. androidTestImplementation(composeBom)
  82. androidTestImplementation(libs.androidx.junit)
  83. androidTestImplementation(libs.espresso.core)
  84. androidTestImplementation(libs.androidx.compose.test.junit4)
  85. debugImplementation(libs.androidx.compose.tooling)
  86. debugImplementation(libs.androidx.compose.test.manifest)
  87. }