|
|
@@ -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
|
}
|