今天简单记录下在安卓中的多渠道打包。
以下代码参考友盟多渠道打包。
首先在清单文件中加入以下代码:
<meta-data
android:name="UMENG_APPKEY"
android:value="590a9************088d" />
<meta-data
android:name="UMENG_CHANNEL"
android:value="${UMENG_CHANNEL_VALUE}" />
然后在Module 的build.gradle 中配置渠道:(android {}中)
productFlavors {
baidu {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "baidu"]
}
xiaomi {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "xiaomi"]
}
meizu {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "meizu"]
}
c_360 {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "360"]
}
tencent {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "tencent"]
}
google {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "google"]
}
最后是自己的apk 输出名称和版本。
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
debuggable false
zipAlignEnabled true;//设置是否对APK包执行ZIP对齐优化
shrinkResources true//打包时删除未使用的资源
applicationVariants.all { variant ->
variant.outputs.each { output ->
def outputFile = output.outputFile
if (outputFile != null && outputFile.name.endsWith('.apk')) {
// 输出apk名称
def fileName = "apk 名字${defaultConfig.versionName}_${variant.productFlavors[0].name}.apk"
output.outputFile = new File(outputFile.parent, fileName)
}
}
}
}
}
完成以上就可以了,赶快去试试~ 喜欢的点个赞~