build.gradle.kts 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  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.8.17"
  6. kotlin("android")
  7. kotlin("android.extensions")
  8. kotlin("kapt")
  9. }
  10. android {
  11. compileSdkVersion(30)
  12. defaultConfig {
  13. applicationId = "com.jkuester.unlauncher"
  14. minSdkVersion(21)
  15. targetSdkVersion(30)
  16. versionName = "2.0.0-beta.1"
  17. versionCode = 15
  18. testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
  19. vectorDrawables { useSupportLibrary = true }
  20. // signingConfigs {
  21. // if (project.extra.has("RELEASE_STORE_FILE")) {
  22. // register("release") {
  23. // storeFile = file(project.extra["RELEASE_STORE_FILE"] as String)
  24. // storePassword = project.extra["RELEASE_STORE_PASSWORD"] as String
  25. // keyAlias = project.extra["RELEASE_KEY_ALIAS"] as String
  26. // keyPassword = project.extra["RELEASE_KEY_PASSWORD"] as String
  27. // }
  28. // }
  29. // }
  30. }
  31. buildTypes {
  32. named("release").configure {
  33. isMinifyEnabled = true
  34. isShrinkResources = true
  35. proguardFiles(
  36. getDefaultProguardFile("proguard-android-optimize.txt"),
  37. "proguard-rules.pro"
  38. )
  39. // signingConfig = signingConfigs.maybeCreate("release")
  40. }
  41. named("debug").configure {
  42. isMinifyEnabled = false
  43. proguardFiles(
  44. getDefaultProguardFile("proguard-android-optimize.txt"),
  45. "proguard-rules.pro"
  46. )
  47. }
  48. }
  49. compileOptions {
  50. sourceCompatibility = JavaVersion.VERSION_1_8
  51. targetCompatibility = JavaVersion.VERSION_1_8
  52. }
  53. kotlinOptions {
  54. jvmTarget = JavaVersion.VERSION_1_8.toString()
  55. }
  56. testOptions {
  57. unitTests.isIncludeAndroidResources = true
  58. }
  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-jdk7:1.3.72")
  69. // Support Libraries
  70. implementation("androidx.appcompat:appcompat:1.2.0")
  71. implementation("androidx.recyclerview:recyclerview:1.1.0")
  72. implementation("androidx.constraintlayout:constraintlayout:2.0.1")
  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.5.0-alpha03")
  78. implementation("androidx.fragment:fragment-ktx:1.2.5")
  79. implementation("androidx.lifecycle:lifecycle-extensions:2.2.0")
  80. implementation("androidx.navigation:navigation-fragment-ktx:2.3.0")
  81. implementation("androidx.lifecycle:lifecycle-livedata-ktx:2.3.1")
  82. implementation("androidx.room:room-runtime:2.2.5")
  83. implementation("androidx.lifecycle:lifecycle-common-java8:2.2.0")
  84. kapt("androidx.room:room-compiler:2.2.5")
  85. //3rd party libs
  86. implementation("com.intuit.sdp:sdp-android:1.0.6")
  87. implementation("com.intuit.ssp:ssp-android:1.0.6")
  88. implementation("com.google.dagger:hilt-android:2.29-alpha")
  89. implementation("androidx.hilt:hilt-lifecycle-viewmodel:1.0.0-alpha02")
  90. kapt("androidx.hilt:hilt-compiler:1.0.0-alpha02")
  91. kapt("com.google.dagger:hilt-android-compiler:2.29-alpha")
  92. }
  93. protobuf {
  94. protoc {
  95. artifact = "com.google.protobuf:protoc:3.17.3"
  96. }
  97. generateProtoTasks {
  98. all().forEach { task ->
  99. task.builtins {
  100. id("java") {
  101. option("lite")
  102. }
  103. }
  104. }
  105. }
  106. }