Przeglądaj źródła

.增加app版本控制文件

mq 5 lat temu
rodzic
commit
6906f31d33
4 zmienionych plików z 62 dodań i 24 usunięć
  1. 31 20
      app/build.gradle
  2. 3 3
      build.gradle
  3. 6 1
      gradle.properties
  4. 22 0
      version_info.json

+ 31 - 20
app/build.gradle

@@ -1,6 +1,16 @@
1
+import org.json.JSONObject
2
+
1 3
 apply plugin: 'com.android.application'
2 4
 apply plugin: "androidx.navigation.safeargs"
3 5
 
6
+
7
+// 获取最新版本名称和版本号
8
+def newVersion = new JSONObject(file('../version_info.json').text).optJSONArray("info").getJSONObject(0)
9
+def vName = newVersion.optString("versionName")
10
+def vCode = newVersion.optLong("versionCode")
11
+println vName
12
+println vCode
13
+
4 14
 android {
5 15
     compileSdkVersion 28
6 16
 
@@ -8,43 +18,44 @@ android {
8 18
         applicationId "com.unis.sxzcl"
9 19
         minSdkVersion 16
10 20
         targetSdkVersion 28
11
-        versionCode 2
12
-        versionName "1.2"
21
+        versionCode vCode.toInteger()
22
+        versionName vName
13 23
         ndk {
14 24
             //设置支持的SO库架构
15 25
             abiFilters 'armeabi-v7a' //,'x86', 'x86_64', 'arm64-v8a'
16 26
         }
17 27
         multiDexEnabled true
28
+
29
+        flavorDimensions "channel"
18 30
     }
19 31
 
20
-    //view绑定
32
+    // view绑定
21 33
     viewBinding {
22 34
         enabled = true
23 35
     }
24 36
 
37
+    // 签名配置
25 38
     signingConfigs {
26
-        config {
39
+        release {
27 40
             v1SigningEnabled true
28 41
             v2SigningEnabled true
29 42
 
30
-            // SHA1:
31
-            // 1242627aad24512434d1e3f6d625d8d8
32
-            storeFile file('../sign/sxzcl.jks')
33
-            storePassword '12121212'
34
-            keyAlias = 'sxzcl'
35
-            keyPassword '12121212'
43
+            storeFile file(KEY_PATH)
44
+            storePassword KEY_PWD
45
+            keyAlias = ALIAS_NAME
46
+            keyPassword ALIAS_PWD
36 47
         }
37 48
     }
38 49
 
39 50
     buildTypes {
40 51
         release {
41
-            minifyEnabled false
52
+            minifyEnabled true
42 53
             proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
43
-            signingConfig signingConfigs.config
54
+            signingConfig signingConfigs.release
44 55
             zipAlignEnabled = true
45 56
         }
46 57
         debug {
47
-            signingConfig signingConfigs.config
58
+            signingConfig signingConfigs.release
48 59
         }
49 60
     }
50 61
     compileOptions {
@@ -62,18 +73,18 @@ android {
62 73
         abortOnError false
63 74
     }
64 75
 
65
-    //配置自定义打包名称
76
+    //配置自定义打包名称和位置
66 77
     android.applicationVariants.all { variant ->
67
-        variant.getPackageApplicationProvider().get().outputDirectory =
68
-                new File("../apk/" + variant.buildType.name)
78
+        // 将apk文件输出到 /apk/release 或 /apk/debug
79
+        variant.getPackageApplicationProvider().get().outputDirectory = new File("../apk/" + variant.buildType.name)
69 80
         variant.outputs.all { output ->
70
-//            def flavorsName = variant.productFlavors[0].name
71 81
             def date = new Date().format("yyyyMMddHHmm")
72 82
             def versionName = defaultConfig.versionName
73 83
             def versionCode = defaultConfig.versionCode
74 84
             def buildType = variant.buildType.name
75 85
 
76
-//            ${date}
86
+            // 输出的apk名称
87
+            // sxzcl_release_x.x_x.apk
77 88
             outputFileName = "sxzcl_${buildType}_${versionName}_${versionCode}.apk"
78 89
         }
79 90
     }
@@ -100,6 +111,6 @@ dependencies {
100 111
     implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
101 112
     //图表库
102 113
     implementation 'com.github.PhilJay:MPAndroidChart:v3.1.0'
103
-    implementation 'androidx.navigation:navigation-fragment:2.3.1'
104
-    implementation 'androidx.navigation:navigation-ui:2.3.1'
114
+    implementation 'androidx.navigation:navigation-fragment:2.3.2'
115
+    implementation 'androidx.navigation:navigation-ui:2.3.2'
105 116
 }

+ 3 - 3
build.gradle

@@ -37,6 +37,6 @@ allprojects {
37 37
 }
38 38
 
39 39
 
40
-//task clean(type: Delete) {
41
-//    delete rootProject.buildDir
42
-//}
40
+task clean(type: Delete) {
41
+    delete rootProject.buildDir
42
+}

+ 6 - 1
gradle.properties

@@ -16,4 +16,9 @@ org.gradle.jvmargs=-Xmx2048m
16 16
 # https://developer.android.com/topic/libraries/support-library/androidx-rn
17 17
 android.useAndroidX=true
18 18
 # Automatically convert third-party libraries to use AndroidX
19
-android.enableJetifier=true
19
+android.enableJetifier=true
20
+# Ç©ÃûÐÅÏ¢
21
+KEY_PATH=../sign/sxzcl.jks
22
+KEY_PWD=12121212
23
+ALIAS_NAME=sxzcl
24
+ALIAS_PWD=12121212

+ 22 - 0
version_info.json

@@ -0,0 +1,22 @@
1
+{
2
+  "info": [
3
+    {
4
+      "versionName": "1.3",
5
+      "versionCode": 3,
6
+      "content": "1.增加版本控制",
7
+      "fileName": "sxzcl_release_1.3_3.apk"
8
+    },
9
+    {
10
+      "versionName": "1.2",
11
+      "versionCode": 2,
12
+      "content": "1.优化功能\n2.修复bug",
13
+      "fileName": "sxzcl_release_1.2_2.apk"
14
+    },
15
+    {
16
+      "versionName": "1.0",
17
+      "versionCode": 1,
18
+      "content": "1.发布版本",
19
+      "fileName": "sxzcl_release_1.0_1.apk"
20
+    }
21
+  ]
22
+}