浏览代码

Refactor: refactor properties

kr328 4 年之前
父节点
当前提交
0406573317
共有 2 个文件被更改,包括 40 次插入20 次删除
  1. 4 2
      .gitignore
  2. 36 18
      build.gradle.kts

+ 4 - 2
.gitignore

@@ -28,6 +28,7 @@ gradle-app.setting
 !/core/src/premium/golang/.idea/codeStyles
 
 # KeyStore
+signing.properties
 *.keystore
 *.jks
 
@@ -37,8 +38,9 @@ cmake-build-*
 # local.properties
 local.properties
 
-# keystore
-keystore.properties
+
+# tracker
+tracker.properties
 
 # vscode
 .vscode

+ 36 - 18
build.gradle.kts

@@ -90,17 +90,6 @@ subprojects {
             }
         }
 
-        buildTypes {
-            named("release") {
-                isMinifyEnabled = isApp
-                isShrinkResources = isApp
-                proguardFiles(
-                    getDefaultProguardFile("proguard-android-optimize.txt"),
-                    "proguard-rules.pro"
-                )
-            }
-        }
-
         productFlavors {
             flavorDimensions(defaultDimension)
 
@@ -120,19 +109,48 @@ subprojects {
 
                 buildConfigField("boolean", "PREMIUM", "Boolean.parseBoolean(\"true\")")
 
-                val trackFile = rootProject.file("track.properties")
-                if (trackFile.exists()) {
-                    val track = Properties().apply {
-                        trackFile.inputStream().use(this::load)
+                val tracker = rootProject.file("tracker.properties")
+                if (tracker.exists()) {
+                    val prop = Properties().apply {
+                        tracker.inputStream().use(this::load)
                     }
 
-                    buildConfigField("String", "APP_CENTER_KEY", "\"${track.getProperty("appcenter.key")!!}\"")
-                } else {
-                    buildConfigField("String", "APP_CENTER_KEY", "null")
+                    buildConfigField("String", "APP_CENTER_KEY", "\"${prop.getProperty("appcenter.key")!!}\"")
                 }
             }
         }
 
+        signingConfigs {
+            val keystore = rootProject.file("signing.properties")
+            if (keystore.exists()) {
+                create("release") {
+                    val prop = Properties().apply {
+                        keystore.inputStream().use(this::load)
+                    }
+
+                    storeFile = rootProject.file(prop.getProperty("keystore.path")!!)
+                    storePassword = prop.getProperty("keystore.password")!!
+                    keyAlias = prop.getProperty("key.alias")!!
+                    keyPassword = prop.getProperty("key.password")!!
+                }
+            }
+        }
+
+        buildTypes {
+            named("release") {
+                isMinifyEnabled = isApp
+                isShrinkResources = isApp
+                signingConfig = signingConfigs.findByName("release")
+                proguardFiles(
+                    getDefaultProguardFile("proguard-android-optimize.txt"),
+                    "proguard-rules.pro"
+                )
+            }
+            named("debug") {
+                versionNameSuffix = ".debug"
+            }
+        }
+
         buildFeatures.apply {
             dataBinding {
                 isEnabled = name != "hideapi"