Android Gradle 插件中文指南

3.4.4 使用混淆

自从 Gradle plugin for ProGuard 4.10 版本以后,Gradle 开始支持混淆。如果通过 Build Type 的 minifyEnabled 属性配置了使用混淆后,The ProGuard plugin 会自动被应用,并且自动创建一些任务。

android {
    buildTypes {
        release {
            minifyEnabled true
            proguardFile getDefaultProguardFile('proguard-android.txt')
        }
    }

    productFlavors {
        flavor1 {
        }
        flavor2 {
            proguardFile 'some-other-rules.txt'
        }
    }
}

使用 buildTypes 以及 productFlavors 定义的规则文件可以轻松的生成多种版本。

有两个默认的规则文件

  • proguard-android.txt
  • proguard-android-optimize.txt

他们位于SDK中,使用 getDefaultProguardFile() 方法可以返回文件的全路经。除了是否启用优化之外,这两个文件的其他功能都是相同的。