版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_36707431/article/details/78407066
一、出现如下错误:
Error:All flavors must now belong to a named flavor dimension.
Learn more at https://d.android.com/r/tools/flavorDimensions-missing-error-message.html
//为flavor设置一个版本,命名是随意的
flavorDimensions "versionCode"
// 多渠道打包
productFlavors {
appchina {
dimension "versionCode"
}
baidu {
dimension "versionCode"
}
yinyongbao {
dimension "versionCode"
}
qihu360 {
dimension "versionCode"
}
huawei {
dimension "versionCode"
}
xiaomi {
dimension "versionCode"
}
}
或者添加
defaultConfig {
applicationId "com.noway"
minSdkVersion 21
targetSdkVersion 26
versionCode 1
versionName "1.0.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
//使用 multidex 的支持
multiDexEnabled true
// //为flavor设置一个版本,命名是随意的
// flavorDimensions "versionCode"
}
二、根据官方文档修改打包配置
productFlavors.all { flavor ->
flavor.manifestPlaceholders = [CHANNEL_VALUE: name]
}
//配置自定义打包名称
android.applicationVariants.all { variant ->
variant.outputs.all {
// outputFileName = "${variant.name}-${variant.versionName}.apk"
// 定义生成的apk的名称
def apkName
if (variant.buildType.name == 'release') {
apkName = "ZhaoYun_" + variant.productFlavors[0].name + "_${variant.versionName}.apk"
}
else if (variant.buildType.name == 'debug') {
// variant.mergedFlavor.versionName = getVersionName() + "." + releaseTime()
apkName = "ZhaoYun_${variant.versionName} " + "-" + releaseTime()+"_debug.apk"
}
//这里使用之前定义apk文件名称
outputFileName = apkName
}
}