在产品风格中启用/禁用ProGuard

时间:2014-06-27 09:30:35

标签: android gradle proguard

所以,我知道在构建类型中,runProguard 'bool'指令可用于判断ProGuard是否应该运行。不幸的是,这个指令不适用于产品口味。有没有办法指定ProGuard是否应该在口味中运行?我曾经想过使用一个基本上说“什么也不做”的配置文件,但是(1)我不知道我应该写什么来禁止ProGuard做任何事情和(2)我不认为它是好的溶液

1 个答案:

答案 0 :(得分:3)

对于您的方案,您感觉就像是在尝试为开发生命周期的不同阶段建模。这真的是构建类型的用途。虽然Gradle(以及Gradle for Android)附带debugrelease版本类型,但您可以定义自己的版本:

buildTypes {
    debug {
      applicationIdSuffix ".d"
      versionNameSuffix "-debug"
    }

    release {
        signingConfig signingConfigs.release
    }

    mezzanine.initWith(buildTypes.release)

    mezzanine {
        applicationIdSuffix ".mezz"
        debuggable true
    }
}

在这里,我:

  • 配置debugrelease构建类型

  • mezzanine克隆release构建类型

  • 覆盖mezzanine上的某些设置,替换release上最初定义的内容