• 配置应用程序的特性
    • 新增一个Flavor:

    配置应用程序的特性

    多渠道打包要在Flavors中配置相应的属性.

    Name: Flavor的名字,如我们常用的渠道:xiaomi、baidu

    Min Sdk Version: 向下兼容的最小SDK版本

    Application Id: 应用程序的包名

    Proguard File: 指定混淆文件路径,如果不指定会使用默认的.

    Signing Config: 指定签名文件. 签名的文件在Signing中设置.

    Target Sdk Version: 目标SDK版本

    Test Instrumentation Runner: 指定Test Runner

    Test Application Id: 测试应用的ID

    Version Code: 应用程序的版本号,用于升级

    Version Name: 应用程序的版本名称

    Version Name Suffix:应用程序版本名称的后缀

    新增一个Flavor:

    新增一个Flavor,所有的参数都允许重新设置,如果不设置的都使用defaultConfig的配置.

    1. // 产品特性
    2. productFlavors {
    3. xiaomi {} //渠道名name为xiaomi
    4. baidu {
    5. }
    6. wandoujia {}
    7. // 自动替换AndroidManifest.xml中的渠道号
    8. productFlavors.all { flavor ->
    9. flavor.manifestPlaceholders = [CHANNEL_ID: name]
    10. }
    11. RC {
    12. minSdkVersion 20
    13. applicationId 'com.wirelessqa.basebuildsampleRC'
    14. proguardFile '/Users/bixiaopeng/myandroid.jks'
    15. signingConfig signingConfigs.MySigning
    16. targetSdkVersion 22
    17. testInstrumentationRunner 'android.support.test.runner.AndroidJUnitRunner'
    18. versionCode 1
    19. versionName '1.0.1'
    20. versionNameSuffix 'RC'
    21. }
    22. }

    针对不同的APP分发渠道,我们可以定义不同的productFlavors(产品特性).

    也可以定义APP开发不同阶段的版本,比如:内测版本、灰度版本、正式版本.

    也可以为不同的版本指定不同的ApplicationId(包名),这样在同一个设备上可以同时安装两个版本,方便测试.

    有了上面的配置你在执行打包命令的时候就会打出不同渠道的包.