(以友盟多渠道打包为例)
在AndroidManifest.xml里面配置PlaceHolder
<meta-data android:name="UMENG_CHANNEL" android:value="${UMENG_CHANNEL_VALUE}"/>
在build.gradle中设置productFlavors
android{ productFlavors{ //加引号是因为如果不加引号打包数字开头的包时会有问题 "xiaomi"{} "360Store"{} } productFlavors.all{ flavor->flavor.manifestPlaceholders=[UMENG_CHANNEL_VALUE:name] } }
然后执行./gradlew assembleRelease就可以打出所有的包了
关于assemble命令
- ./gradlew assembleDebug 打出所有的debug包
- ./gradlew assembleRelease 打出所有的Release包
- ./gradlew assembleWandoujiaRelease 只打wandoujia渠道包
- ./gradlew assembleWandoujia 打出wandoujia的Release和Debug包