Running Proguard(运行 Proguard)

从Gradle Plugin for ProGuard version 4.10之后就开始支持ProGuard。ProGuard插件是自动添加进来的。如果Build TyperunProguard属性被设置为true,对应的task将会自动创建。

  1. android {
  2. buildTypes {
  3. release {
  4. runProguard true
  5. proguardFile getDefaultProguardFile('proguard-android.txt')
  6. }
  7. }
  8. productFlavors {
  9. flavor1 {
  10. }
  11. flavor2 {
  12. proguardFile 'some-other-rules.txt'
  13. }
  14. }
  15. }

发布版本将会使用它的Build Type中声明的规则文件,product flavor(定制的产品版本)将会使用对应flavor中声明的规则文件。

这里有两个默认的规则文件:

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

这两个文件都在SDK的路径下。使用getDefaultProguardFile()可以获取这些文件的完整路径。它们除了是否要进行优化之外,其它都是相同的。