From: snickersun Date: Wed, 18 Mar 2020 10:03:04 +0000 (+0800) Subject: 修改编译脚本,自动修改名字和增加序号。 X-Git-Url: http://git.snicker.com.cn/sitemap.xml?a=commitdiff_plain;h=2ddb644173ed7d61b6148f73924b1264c03c1b7f;p=factoryMode.git 修改编译脚本,自动修改名字和增加序号。 并编译最新版本 FactoryMode_V6_202003181801_release --- diff --git a/app/build.gradle b/app/build.gradle index 1997d4a..084e71d 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,5 +1,33 @@ apply plugin: 'com.android.application' +// APK 名称 +static def getApkBaseName() { + return "FactoryMode" +} + +def getVersionCode() { + def versionCodeFile = file('version_code.properties') + if (versionCodeFile.canRead()) { + Properties properties = new Properties() + properties.load(new FileInputStream(versionCodeFile)) + def versionCode = properties['VERSION_CODE'].toInteger()//读取version_code.properties文件存放的版本号。 + def runTasks = gradle.startParameter.taskNames + def task = ':app:assembleRelease' + if (task in runTasks) { + properties['VERSION_CODE'] = (++versionCode).toString() + properties.store(versionCodeFile.newWriter(), null) + } + + return versionCode + } else { + throw new GradleException("无法读取version_code.properties文件!") + } +} +def releaseTime() { + + return new Date().format("yyyyMMddHHmm", TimeZone.getTimeZone("GMT+08:00")) + +} android { signingConfigs { key { @@ -14,12 +42,16 @@ android { abortOnError false } compileSdkVersion 27 + + def currentVersionCode = getVersionCode() + def currentVersionName = releaseTime() + defaultConfig { applicationId "mobile.miki" minSdkVersion 19 targetSdkVersion 19 - versionCode 4 - versionName '20191204-2040' + versionCode currentVersionCode + versionName "${currentVersionName}" } buildTypes { release { @@ -32,9 +64,13 @@ android { } } //打包后应用名称 - applicationVariants.all { variant -> - variant.outputs.all { output -> - outputFileName = "FactoryMode.apk" + android.applicationVariants.all { variant -> + variant.outputs.all { + if (variant.buildType.name == "release") { + outputFileName = "${getApkBaseName()}_V${currentVersionCode}_${currentVersionName}_release.apk" + } else { + outputFileName = "${getApkBaseName()}_V${currentVersionCode}_${currentVersionName}_debug.apk" + } } } // buildToolsVersion '20.0.3' diff --git a/app/release/FactoryMode_V6_202003181801_release.apk b/app/release/FactoryMode_V6_202003181801_release.apk new file mode 100644 index 0000000..b4e467a Binary files /dev/null and b/app/release/FactoryMode_V6_202003181801_release.apk differ diff --git a/app/release/output.json b/app/release/output.json index 9f10c44..e9fed5a 100644 --- a/app/release/output.json +++ b/app/release/output.json @@ -1 +1 @@ -[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":4,"versionName":"20191204-2040","enabled":true,"outputFile":"FactoryMode.apk","fullName":"release","baseName":"release"},"path":"FactoryMode.apk","properties":{}}] \ No newline at end of file +[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":6,"versionName":"202003181801","enabled":true,"outputFile":"FactoryMode_V6_202003181801_release.apk","fullName":"release","baseName":"release"},"path":"FactoryMode_V6_202003181801_release.apk","properties":{}}] \ No newline at end of file diff --git a/app/version_code.properties b/app/version_code.properties new file mode 100644 index 0000000..d52082a --- /dev/null +++ b/app/version_code.properties @@ -0,0 +1,2 @@ +#Wed Mar 18 18:01:27 CST 2020 +VERSION_CODE=6