apply plugin: 'com.android.application'\r
+// APK 名称\r
+static def getApkBaseName() {\r
+ return "FactoryMode"\r
+}\r
+\r
+def getVersionCode() {\r
+ def versionCodeFile = file('version_code.properties')\r
+ if (versionCodeFile.canRead()) {\r
+ Properties properties = new Properties()\r
+ properties.load(new FileInputStream(versionCodeFile))\r
+ def versionCode = properties['VERSION_CODE'].toInteger()//读取version_code.properties文件存放的版本号。\r
+ def runTasks = gradle.startParameter.taskNames\r
+ def task = ':app:assembleRelease'\r
+ if (task in runTasks) {\r
+ properties['VERSION_CODE'] = (++versionCode).toString()\r
+ properties.store(versionCodeFile.newWriter(), null)\r
+ }\r
+\r
+ return versionCode\r
+ } else {\r
+ throw new GradleException("无法读取version_code.properties文件!")\r
+ }\r
+}\r
\r
+def releaseTime() {\r
+\r
+ return new Date().format("yyyyMMddHHmm", TimeZone.getTimeZone("GMT+08:00"))\r
+\r
+}\r
android {\r
signingConfigs {\r
key {\r
abortOnError false\r
}\r
compileSdkVersion 27\r
+\r
+ def currentVersionCode = getVersionCode()\r
+ def currentVersionName = releaseTime()\r
+\r
defaultConfig {\r
applicationId "mobile.miki"\r
minSdkVersion 19\r
targetSdkVersion 19\r
- versionCode 4\r
- versionName '20191204-2040'\r
+ versionCode currentVersionCode\r
+ versionName "${currentVersionName}"\r
}\r
buildTypes {\r
release {\r
}\r
}\r
//打包后应用名称\r
- applicationVariants.all { variant ->\r
- variant.outputs.all { output ->\r
- outputFileName = "FactoryMode.apk"\r
+ android.applicationVariants.all { variant ->\r
+ variant.outputs.all {\r
+ if (variant.buildType.name == "release") {\r
+ outputFileName = "${getApkBaseName()}_V${currentVersionCode}_${currentVersionName}_release.apk"\r
+ } else {\r
+ outputFileName = "${getApkBaseName()}_V${currentVersionCode}_${currentVersionName}_debug.apk"\r
+ }\r
}\r
}\r
// buildToolsVersion '20.0.3'\r
-[{"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