build.gradle.kts 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  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. resValue("string", "build_type_tag", "AIO")
  33. initWith(getByName("debug"))
  34. matchingFallbacks += listOf("debug")
  35. }
  36. create("aio-test") {
  37. initWith(getByName("aio"))
  38. matchingFallbacks += listOf("aio", "debug")
  39. }
  40. create("aio-CQ") {
  41. initWith(getByName("aio-test"))
  42. matchingFallbacks += listOf("aio-test", "aio", "debug")
  43. }
  44. }
  45. applicationVariants.all {
  46. outputs.all {
  47. val appName = "six" // 你的自定义名称
  48. val buildType = buildType.name
  49. val versionName = versionName
  50. val versionCode = versionCode
  51. val fileName = "${appName}.${buildType}-${versionName}-${versionCode}.apk"
  52. (this as BaseVariantOutputImpl).apply {
  53. outputFileName = fileName
  54. }
  55. }
  56. }
  57. compileOptions {
  58. sourceCompatibility = JavaVersion.VERSION_11
  59. targetCompatibility = JavaVersion.VERSION_11
  60. }
  61. kotlinOptions {
  62. jvmTarget = "11"
  63. }
  64. buildFeatures {
  65. compose = true
  66. }
  67. }
  68. dependencies {
  69. implementation(libs.androidx.core.ktx)
  70. implementation(libs.androidx.lifecycle.runtime.ktx)
  71. implementation(libs.androidx.activity.compose)
  72. implementation(libs.androidx.navigation.compose)
  73. implementation(libs.serialization.json)
  74. implementation(platform(libs.androidx.compose.bom))
  75. implementation(libs.androidx.ui)
  76. implementation(libs.androidx.ui.graphics)
  77. implementation(libs.androidx.ui.tooling.preview)
  78. implementation(libs.androidx.material3)
  79. testImplementation(libs.junit)
  80. androidTestImplementation(libs.androidx.junit)
  81. androidTestImplementation(libs.androidx.espresso.core)
  82. androidTestImplementation(platform(libs.androidx.compose.bom))
  83. androidTestImplementation(libs.androidx.ui.test.junit4)
  84. debugImplementation(libs.androidx.ui.tooling)
  85. debugImplementation(libs.androidx.ui.test.manifest)
  86. implementation(project(":core"))
  87. implementation(project(":library:browser"))
  88. implementation(project(":library:device:pulse"))
  89. implementation(libs.gson)
  90. }