build.gradle 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  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_1_8
  40. targetCompatibility JavaVersion.VERSION_1_8
  41. }
  42. kotlinOptions {
  43. jvmTarget = '1.8'
  44. }
  45. buildFeatures {
  46. compose true
  47. }
  48. composeOptions {
  49. kotlinCompilerExtensionVersion composeCompilerVersion
  50. }
  51. packagingOptions {
  52. resources {
  53. excludes += '/META-INF/{AL2.0,LGPL2.1}'
  54. }
  55. }
  56. kotlinOptions {
  57. allWarningsAsErrors = true
  58. }
  59. lint {
  60. warningsAsErrors = true
  61. }
  62. }
  63. dependencies {
  64. // compose
  65. implementation "androidx.compose.material:material:$composeLibraryVersion"
  66. implementation "androidx.activity:activity-compose:1.7.0"
  67. // room
  68. implementation "androidx.room:room-ktx:2.5.1"
  69. kapt "androidx.room:room-compiler:2.5.1"
  70. // coil
  71. implementation "io.coil-kt:coil-compose:2.3.0"
  72. // datetime
  73. implementation 'org.jetbrains.kotlinx:kotlinx-datetime:0.4.0'
  74. // ktor
  75. implementation 'io.ktor:ktor-client-android:2.2.4'
  76. implementation 'io.ktor:ktor-client-content-negotiation:2.2.4'
  77. implementation 'io.ktor:ktor-serialization-kotlinx-json:2.2.4'
  78. }