build.gradle.kts 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. import java.time.format.*
  2. import java.time.*
  3. @Suppress("DSL_SCOPE_VIOLATION") // TODO: Remove once KTIJ-19369 is fixed
  4. plugins {
  5. alias(libs.plugins.com.android.application)
  6. alias(libs.plugins.org.jetbrains.kotlin.android)
  7. kotlin("kapt")
  8. }
  9. android {
  10. namespace = "com.anjun.supervision"
  11. compileSdk = libs.versions.compileSdk.get().toInt()
  12. defaultConfig {
  13. applicationId = "com.anjun.supervision"
  14. minSdk = libs.versions.minSdk.get().toInt()
  15. targetSdk = libs.versions.targetSdk.get().toInt()
  16. versionCode = 1
  17. versionName = "1.0"
  18. testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
  19. vectorDrawables {
  20. useSupportLibrary = true
  21. }
  22. }
  23. signingConfigs {
  24. create("release"){
  25. storeFile = file("supervisionWarehouseKey.jks")
  26. storePassword = "anjun2024"
  27. keyAlias = "supervisionApp"
  28. keyPassword = "anjun2024"
  29. }
  30. create("debugSigning"){
  31. storeFile = file("supervisionWarehouseKey.jks")
  32. storePassword = "anjun2024"
  33. keyAlias = "supervisionApp"
  34. keyPassword = "anjun2024"
  35. }
  36. }
  37. buildTypes {
  38. release {
  39. isMinifyEnabled = false
  40. proguardFiles(
  41. getDefaultProguardFile("proguard-android-optimize.txt"),
  42. "proguard-rules.pro"
  43. )
  44. signingConfig = signingConfigs.getByName("release")
  45. }
  46. debug {
  47. signingConfig = signingConfigs.getByName("debugSigning")
  48. }
  49. }
  50. android.applicationVariants.all {
  51. outputs.all {
  52. if (this is com.android.build.gradle.internal.api.ApkVariantOutputImpl) {
  53. val config = project.android.defaultConfig
  54. val versionName = config.versionName
  55. val formatter = DateTimeFormatter.ofPattern("yyyyMMddHHmm")
  56. val createTime = LocalDateTime.now().format(formatter)
  57. this.outputFileName = "AJSupervision_${this.name}_${versionName}_$createTime.apk"
  58. }
  59. }
  60. }
  61. compileOptions {
  62. sourceCompatibility = JavaVersion.VERSION_1_8
  63. targetCompatibility = JavaVersion.VERSION_1_8
  64. }
  65. kotlinOptions{
  66. jvmTarget = "1.8"
  67. }
  68. packaging {
  69. resources {
  70. excludes += "/META-INF/{AL2.0,LGPL2.1}"
  71. }
  72. }
  73. dataBinding{
  74. enable = true
  75. }
  76. }
  77. tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile::class.java){
  78. kotlinOptions {
  79. jvmTarget = "1.8"
  80. }
  81. }
  82. dependencies {
  83. implementation(libs.bundles.androidx)
  84. implementation(libs.cardview)
  85. implementation(libs.recyclerview)
  86. implementation(libs.constraintlayout)
  87. implementation(libs.flexbox)
  88. implementation(libs.bundles.okhttp)
  89. implementation(libs.bundles.retrofit)
  90. implementation(libs.mmkv)
  91. implementation(libs.kotlin.reflect)
  92. implementation(libs.paging)
  93. implementation(project(":core:core_tool"))
  94. implementation(project(":core:core_router"))
  95. implementation(project(":core:core_mvvm"))
  96. implementation(project(":core:network"))
  97. implementation(project(":features:feature_common:common_view"))
  98. implementation(project(":features:feature_common:common_base"))
  99. implementation(project(":data:data_main"))
  100. //需要初始化各feature
  101. implementation(project(":features:feature_main"))
  102. implementation(project(":service:service_main"))
  103. }