build.gradle.kts 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. import com.android.build.gradle.internal.api.BaseVariantOutputImpl
  2. import java.text.SimpleDateFormat
  3. import java.util.Date
  4. fun getVersionCode(): Int {
  5. val dateFormat = SimpleDateFormat("yyyyMMdd")
  6. val versionCodeStr = dateFormat.format(Date())
  7. return versionCodeStr.toInt()
  8. }
  9. plugins {
  10. alias(libs.plugins.android.application)
  11. alias(libs.plugins.kotlin.android)
  12. alias(libs.plugins.kotlin.compose)
  13. alias(libs.plugins.kotlin.serialization)
  14. }
  15. android {
  16. namespace = "com.hzliuzhi.applet.container"
  17. compileSdk = 35
  18. defaultConfig {
  19. applicationId = "com.hzliuzhi.applet.container"
  20. minSdk = 26
  21. targetSdk = 35
  22. versionCode = getVersionCode()
  23. versionName = "2.0.0"
  24. testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
  25. }
  26. buildTypes {
  27. release {
  28. isMinifyEnabled = false
  29. proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
  30. }
  31. create("aio") {
  32. initWith(getByName("debug"))
  33. matchingFallbacks += listOf("debug")
  34. }
  35. create("aio-test") {
  36. initWith(getByName("aio"))
  37. matchingFallbacks += listOf("aio", "debug")
  38. }
  39. create("aio-CQ") {
  40. initWith(getByName("aio-test"))
  41. matchingFallbacks += listOf("aio-test", "aio", "debug")
  42. }
  43. create("pda") {
  44. initWith(getByName("debug"))
  45. matchingFallbacks += listOf("debug")
  46. }
  47. create("pda-test") {
  48. initWith(getByName("pda"))
  49. matchingFallbacks += listOf("pda", "debug")
  50. }
  51. }
  52. androidResources {
  53. noCompress.add("apk")
  54. }
  55. applicationVariants.all {
  56. outputs.all {
  57. val appName = "six" // 你的自定义名称
  58. val buildType = buildType.name
  59. val versionName = versionName
  60. val versionCode = versionCode
  61. val fileName = "${appName}.${buildType}-${versionName}-${versionCode}.apk"
  62. (this as BaseVariantOutputImpl).apply {
  63. outputFileName = fileName
  64. }
  65. }
  66. }
  67. compileOptions {
  68. sourceCompatibility = JavaVersion.VERSION_11
  69. targetCompatibility = JavaVersion.VERSION_11
  70. }
  71. kotlinOptions {
  72. jvmTarget = "11"
  73. }
  74. buildFeatures {
  75. compose = true
  76. }
  77. }
  78. dependencies {
  79. implementation(libs.androidx.core.ktx)
  80. implementation(libs.androidx.lifecycle.runtime.ktx)
  81. implementation(libs.androidx.activity.compose)
  82. implementation(libs.androidx.navigation.compose)
  83. implementation(libs.serialization.json)
  84. implementation(platform(libs.androidx.compose.bom))
  85. implementation(libs.androidx.ui)
  86. implementation(libs.androidx.ui.graphics)
  87. implementation(libs.androidx.ui.tooling.preview)
  88. implementation(libs.androidx.material3)
  89. testImplementation(libs.junit)
  90. androidTestImplementation(libs.androidx.junit)
  91. androidTestImplementation(libs.androidx.espresso.core)
  92. androidTestImplementation(platform(libs.androidx.compose.bom))
  93. androidTestImplementation(libs.androidx.ui.test.junit4)
  94. debugImplementation(libs.androidx.ui.tooling)
  95. debugImplementation(libs.androidx.ui.test.manifest)
  96. implementation(project(":core"))
  97. implementation(project(":library:browser"))
  98. implementation(project(":library:device:pulse"))
  99. implementation(project(":library:device:printer"))
  100. implementation(project(":library:device:scanner"))
  101. implementation(libs.gson)
  102. }