build.gradle.kts 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. import com.google.protobuf.gradle.*
  2. plugins {
  3. id("com.android.application")
  4. id("dagger.hilt.android.plugin")
  5. id("com.google.protobuf") version "0.9.0"
  6. kotlin("android")
  7. kotlin("android.extensions")
  8. kotlin("kapt")
  9. }
  10. android {
  11. compileSdkVersion(33)
  12. defaultConfig {
  13. applicationId = "com.jkuester.unlauncher"
  14. minSdkVersion(21)
  15. targetSdkVersion(33)
  16. versionName = "2.1.0"
  17. versionCode = 19
  18. vectorDrawables { useSupportLibrary = true }
  19. // signingConfigs {
  20. // if (project.extra.has("RELEASE_STORE_FILE")) {
  21. // register("release") {
  22. // storeFile = file(project.extra["RELEASE_STORE_FILE"] as String)
  23. // storePassword = project.extra["RELEASE_STORE_PASSWORD"] as String
  24. // keyAlias = project.extra["RELEASE_KEY_ALIAS"] as String
  25. // keyPassword = project.extra["RELEASE_KEY_PASSWORD"] as String
  26. // }
  27. // }
  28. // }
  29. }
  30. buildTypes {
  31. named("release").configure {
  32. isMinifyEnabled = true
  33. isShrinkResources = true
  34. proguardFiles(
  35. getDefaultProguardFile("proguard-android-optimize.txt"),
  36. "proguard-rules.pro"
  37. )
  38. // signingConfig = signingConfigs.maybeCreate("release")
  39. }
  40. named("debug").configure {
  41. isMinifyEnabled = false
  42. proguardFiles(
  43. getDefaultProguardFile("proguard-android-optimize.txt"),
  44. "proguard-rules.pro"
  45. )
  46. }
  47. }
  48. compileOptions {
  49. sourceCompatibility = JavaVersion.VERSION_17
  50. targetCompatibility = JavaVersion.VERSION_17
  51. }
  52. kotlinOptions {
  53. jvmTarget = JavaVersion.VERSION_17.toString()
  54. }
  55. testOptions {
  56. unitTests.isIncludeAndroidResources = true
  57. }
  58. namespace = "com.sduduzog.slimlauncher"
  59. applicationVariants.all{
  60. outputs.all {
  61. (this as com.android.build.gradle.internal.api.BaseVariantOutputImpl).outputFileName = "${applicationId}.apk"
  62. }
  63. }
  64. }
  65. dependencies {
  66. implementation(fileTree(mapOf("dir" to "libs", "include" to listOf("*.jar"))))
  67. // Kotlin Libraries
  68. implementation("org.jetbrains.kotlin:kotlin-stdlib:1.7.22")
  69. // Support Libraries
  70. implementation("androidx.appcompat:appcompat:1.6.1")
  71. implementation("androidx.recyclerview:recyclerview:1.3.0")
  72. implementation("androidx.constraintlayout:constraintlayout:2.1.4")
  73. implementation("androidx.datastore:datastore:1.0.0")
  74. implementation("androidx.datastore:datastore-core:1.0.0")
  75. implementation("com.google.protobuf:protobuf-javalite:3.10.0")
  76. // Arch Components
  77. implementation("androidx.core:core-ktx:1.9.0")
  78. implementation("androidx.fragment:fragment-ktx:1.5.7")
  79. implementation("androidx.lifecycle:lifecycle-extensions:2.2.0")
  80. implementation("androidx.navigation:navigation-fragment-ktx:2.5.3")
  81. implementation("androidx.lifecycle:lifecycle-livedata-ktx:2.5.1")
  82. implementation("androidx.room:room-runtime:2.5.1")
  83. kapt("androidx.room:room-compiler:2.5.1")
  84. //3rd party libs
  85. implementation("com.intuit.sdp:sdp-android:1.0.6")
  86. implementation("com.intuit.ssp:ssp-android:1.0.6")
  87. implementation("com.google.dagger:hilt-android:2.44.2")
  88. kapt("androidx.hilt:hilt-compiler:1.0.0")
  89. kapt("com.google.dagger:hilt-android-compiler:2.44")
  90. }
  91. protobuf {
  92. protoc {
  93. artifact = "com.google.protobuf:protoc:3.17.3"
  94. }
  95. generateProtoTasks {
  96. all().forEach { task ->
  97. task.builtins {
  98. id("java") {
  99. option("lite")
  100. }
  101. }
  102. }
  103. }
  104. }