Moosphan / Android-Daily-Interview

:pushpin:每工作日更新一道 Android 面试题,小聚成河,大聚成江,共勉之~

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

2019-08-29:请谈谈你是如何进行多渠道打包的?

Moosphan opened this issue · comments

2019-08-29:请谈谈你是如何进行多渠道打包的?

渠道少就自己一个个的打,渠道多的配置就百度一哈解决

正好有个问题 为啥我的Studio 升级到3.5.0无法进行多渠道打包,单打也不行,降级了就能正常打包

productFlavors

1.gradle自带的productFlavor方式
2.360加固保,腾讯云·乐固,友盟
3.https://github.com/mcxiaoke/gradle-packer-plugin列子

1.gradle自带的productFlavor方式
2.360加固保,腾讯云·乐固,友盟,梆梆

用python脚本改metainf文件

用360加固保,加固打包一条龙

  1. productFlavor
  2. 如果不涉及apk类和资源改动,仅仅是某些配置信息,用walle更快
  3. 第三方的类似腾讯
commented
    从本质上来说,多渠道打包就是修改配置文件内容;因此,只需要apk解压 -> 修改文件 -> 压缩文件<br>
    1,android studio一个一个的修改配置,打包<br>
    2,利用第三方工具,实现这个过程,一半三方加固工具都有这个功能<br>
    3,自己实现脚本,shell脚本或python脚本<br>
    <br>

我自己偷懒,就使用第三方工具多渠道打包

commented
  1. productFlavor
  2. 自定义gradle插件 入侵gradle构建流程(脚手架:java,kotlin,groovy)拓展性极高 需足够熟悉android gradle api 但是android gradle api向下兼容性很差

在APP的build.gradle使用productFlavors配置多渠道参数 可以配置生产环境和发布环境 包名 版本