build.gradle 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. plugins {
  2. id 'com.android.application'
  3. id 'org.jetbrains.kotlin.android'
  4. id 'org.jetbrains.kotlin.kapt'
  5. id 'org.jetbrains.kotlin.plugin.serialization'
  6. id 'org.sirekanyan.version-checker'
  7. }
  8. android {
  9. namespace "com.sirekanian.spacetime"
  10. compileSdk 33
  11. defaultConfig {
  12. applicationId "com.sirekanian.spacetime"
  13. minSdk 21
  14. targetSdk 33
  15. versionCode appVersionCode as int
  16. versionName appVersionName
  17. archivesBaseName = "$applicationId-$versionName-$versionCode"
  18. vectorDrawables {
  19. useSupportLibrary true
  20. }
  21. javaCompileOptions {
  22. annotationProcessorOptions {
  23. arguments += ["room.schemaLocation": "$projectDir/schemas".toString()]
  24. }
  25. }
  26. }
  27. buildTypes {
  28. debug {
  29. applicationIdSuffix '.debug'
  30. }
  31. release {
  32. minifyEnabled true
  33. shrinkResources true
  34. proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard.pro'
  35. signingConfig signingConfigs.debug
  36. }
  37. }
  38. compileOptions {
  39. sourceCompatibility JavaVersion.VERSION_11
  40. targetCompatibility JavaVersion.VERSION_11
  41. }
  42. kotlin {
  43. jvmToolchain(11)
  44. }
  45. buildFeatures {
  46. buildConfig true
  47. compose true
  48. }
  49. composeOptions {
  50. kotlinCompilerExtensionVersion composeCompilerVersion
  51. }
  52. packagingOptions {
  53. resources {
  54. excludes += '/META-INF/{AL2.0,LGPL2.1}'
  55. }
  56. }
  57. kotlinOptions {
  58. allWarningsAsErrors = true
  59. }
  60. lint {
  61. warningsAsErrors = true
  62. }
  63. }
  64. dependencies {
  65. // compose
  66. implementation "androidx.compose.material:material:$composeLibraryVersion"
  67. implementation "androidx.activity:activity-compose:1.7.0"
  68. // room
  69. implementation "androidx.room:room-ktx:2.5.1"
  70. kapt "androidx.room:room-compiler:2.5.1"
  71. // coil
  72. implementation "io.coil-kt:coil-compose:2.3.0"
  73. // datetime
  74. implementation 'org.jetbrains.kotlinx:kotlinx-datetime:0.4.0'
  75. // ktor
  76. implementation 'io.ktor:ktor-client-android:2.2.4'
  77. implementation 'io.ktor:ktor-client-content-negotiation:2.2.4'
  78. implementation 'io.ktor:ktor-serialization-kotlinx-json:2.2.4'
  79. }