去友盟申請app的key 然后在menifest里面注冊如下
<!--集成友盟-->
<meta-data
android:name="UMENG_APPKEY"
android:value="your key"/>
<meta-data
android:name="UMENG_CHANNEL"
android:value="Umeng"/>
然后在gradle的android模塊里面寫入如下代碼
productFlavors{
xiaomi{}
huawei{}
baidu{}
wandoujia{}
yingyongbao{}
}
productFlavors.all {
flavors -> flavors.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
}
如果需要對每個不同渠道的app自定義命名,需要在release里面寫入如下代碼
applicationVariants.all { variant->
variant.outputs.all{ output->
def outputFile = output.outputFile
if (outputFile!=null && outputFile.name.endsWith(".apk")){
// outputFile.name = "AndroidDemo_v${defaultConfig.versionName}_${releaseTime()}_${variant.productFlavors[0].name}.apk"
// studio 3.0 以后outputFile.name為只讀屬性,需要改為如下寫法
outputFileName = "AndroidDemo_v${defaultConfig.versionName}_${releaseTime()}_${variant.productFlavors[0].name}.apk"
}
}
}
如果studio是3.0以上的,不要忘了寫上下面這句,否則會報錯flavorDimensions issure 導致編譯不通過。
android {
compileSdkVersion 24
.....
flavorDimensions "versionCode"
}