两分钟教你搞定Gradle多渠道打包

国内Android市场众多渠道,有时为了统计每个渠道的下载量或是其它数据统计,
就需要我们针对每个渠道单独打包,如果要我们逐个来打包, 那工作量就有点繁琐,一个字累,重复性的工作我们不干,有了Gradle,这事就变得轻而易举了。
下面以友盟统计为例,在AndroidManifest.xml里面会有这么一段:

<meta-data android:name="UMENG_CHANNEL" android:value="Channel_ID" />

其中Channel_ID就是渠道标识。我们的目的就是希望在编译的时候这个值能够自动变化
下面我们来看看怎么实现:

1、在AndroidManifest.xml里配置

<meta-data android:name="UMENG_CHANNEL" android:value="${UMENG_CHANNEL_VALUE}" />

2、在build.gradle 设置productFlavors

android { 
    productFlavors {
        baidu {}
        xiaomi {}
        _360 {}
        wandoujia {}
    } 
    productFlavors.all { 
        flavor -> flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name] 
        }
    }

然后直接执行./gradlew assembleRelease 后等待打包
或者找到

《两分钟教你搞定Gradle多渠道打包》 gradle打包

右击run,后就耐心等待了。

打包成功后,我们可以在 **app\build\outputs\apk **路径下看到我们需要的apk包。

这样关于Gradle多渠道打包就算完成了。

坚持原创作者简介:洪生鹏。热衷旅行、写作,过着白天到工地搬砖、晚上写故事的生活。

点赞