Android Studio多渠道打包方式二:通过在gradle文件来写渠道信息

Android Studio多渠道打包方式二:通过在gradle文件来写渠道信息_第1张图片

代码如下:

buildTypes {
        debug {
            shrinkResources true
ndk {
                abiFilters "armeabi"
}
        }
        release {
            ndk {
                abiFilters "armeabi"
}
minifyEnabled false // 是否进行混淆
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
            //签名配置
signingConfig signingConfigs.release
            //渠道包配置
applicationVariants.all { variant ->
                variant.outputs.each { output ->
def outputFile = output.outputFile
if (outputFile != null && outputFile.name.endsWith('.apk')) {
// 输出apk名称为xxx_1.0_wandoujia.apk
def fileName = "xxx_${defaultConfig.versionName}_${variant.productFlavors[0].name}.apk"
output.outputFile = new File(outputFile.parent, fileName)
                    }
                }
            }
        }
    }
//gradle在build的时候,会执行lint检查,有任何的错误或者警告提示,都会终止构建。特此去掉该功能
lintOptions {
abortOnError false
}
    productFlavors {
//        hiapk{}
//        anzhi{}
//        yingyonghui{}
//        amazon{}
//        gfan{}
    }
   productFlavors.all {
    flavor -> flavor.manifestPlaceholders = [MOFANG_CHANNEL_VALUE: name]
   }
最后还需要在清单文件进行配置

<meta-data
android:name="MOFANG_CHANNEL"
android:value="${MOFANG_CHANNEL_VALUE}" />


你可能感兴趣的:(Android Studio多渠道打包方式二:通过在gradle文件来写渠道信息)