有时候会需要打包到指定的路径然后由脚本推送。打包apk时可以通过gradle指定名称和路径,并且可以配置更多信息。
def appReleaseDir = "apk输出文件夹"
signingConfigs {
//签名信息 可以自定义很多,以下是必须的
releaseConfig {
storeFile file("jks签名文件路径")
storePassword "xxxxxx"
keyAlias "xxxxxx"
keyPassword "xxxxxx"
}
}
//修改生成的apk名字
applicationVariants.all{ variant->
variant.outputs.each { output->
def oldFile = output.outputFile
def newName = '';
//只有release编译时生效
if(variant.buildType.name.equals('release')){
// APK输出文件名规则:极剪-版本名-.apk
def releaseApkName = '极剪-' + appVersionName + '-' + '.apk'
// 设置apk输出文件夹
output.getPackageApplication().outputDirectory = new File(project.rootDir.absolutePath + "/releaseApks")
// 设置apk输出文件名
output.outputFileName = releaseApkName
}
}
}
//获取时间戳
def getDate() {
def date = new Date()
def formattedDate = date.format('yyyyMMddHHmm')
return formattedDate
}
这样release编译就会根据指定的规则生成在指定目录,然后可以用Jenkins等进行发布管理。