android平台每次发布App都需要面N个市场,而为了能够采集到各个应用市场的统计数据,就必须为每一个应用平台生成相应的apk包,也就是大家认为的渠道包。
我用的百度统计,如何使用百度统计在此就不做描述,下面说说代码中配置。
在AndroidManifest中配置:
//百度统计的id
<meta-data
android:name="BaiduMobAd_STAT_ID"
android:value="12cda829b7" />
//渠道
<meta-data
android:name="BaiduMobAd_CHANNEL"
android:value="${CHANNEL_VALUE}" />
在build.gradle文件的defaultConfig里加上PlaceHolder定义:
android{
defaultConfig{
// 定义渠道变量
manifestPlaceholders = [CHANNEL_VALUE: "Offical", APP_NAME: "@string/app_name"]
}
}
// build.gradle文件里填写签名相关信息
signingConfigs {
release {
storeFile file('../../keystore/xxxxxx.jks')
storePassword "xxxxxx"
keyAlias "xxxxx"
keyPassword "xxxxxxx"
}
}
//build.gradle文件里添加ProductFlavors配置,自己需要的渠道,填写自己的服务器域名
productFlavors {
Official {..}
MI{...}
WD{...}
}
// 给渠道变量赋值
productFlavors.all { flavor ->
if (name == "Dev" || name == "Bak") {
flavor.manifestPlaceholders = [CHANNEL_VALUE: name, APP_NAME: "youappname-" + name]
} else {
flavor.manifestPlaceholders = [CHANNEL_VALUE: name]
}
}
配置好后就是编译代码了了,编译apk文件这里不再描述。