由于Android市场众多渠道,为了统计每个渠道的下载及其它数据统计,就需要我们针对每个渠道单独打包,不过我们可以通过Gradle进行打包,以下为方法和技巧。
在使用SDK监测渠道时候,需要在AndroidManifest.xml里面进行配置,配置信息如下:
<meta-data
android:name=“Channel” //Channel标识为渠道监测;
android:value=“Channel_ID“ //Channel_ID需要设置的渠道名称;
/>
里面的Channel_ID就是渠道标示。我们的目标就是在编译的时候这个值能够自动变化。
- 第一步 在AndroidManifest.xml里配置PlaceHolder。
<meta-data
android:name=“Channel“
android:value=“${CHANNEL_VALUE}“ //将该处Channel_ID的值修改为变量${CHANNEL_VALUE}
/>
- 第二步 在build.gradle设置productFlavors。
方法一:
android {
productFlavors {
xiaomi {
manifestPlaceholders = [CHANNEL_VALUE: “xiaomi”]
}
360 {
manifestPlaceholders = [CHANNEL_VALUE: “360”]
}
baidu {
manifestPlaceholders = [CHANNEL_VALUE: “baidu”]
}
wandoujia {
manifestPlaceholders = [CHANNEL_VALUE: “wandoujia”]
}
}
}
方法二:
android {
productFlavors {
xiaomi {}
360 {}
baidu {}
wandoujia {}
}
productFlavors.all {
flavor -> flavor.manifestPlaceholders = [CHANNEL_VALUE: name]
}
}
- 执行 ./gradlew assembleRelease 进行打包。