ProGuard系列 - ProGuard配置集合

作者:Tong,欢迎交流。
邮箱:wangtotang@gmail.com
GitHub:https://github.com/wangtotang

导读:
  学习完了Android ProGuard后,当然要立即实践它。现在我们来尝试为自己的工程进行ProGuard配置。
  这是这个系列的第三篇文章,主要是收集了我们常用到的ProGuard配置。

本篇文章主要讲解ProGuardRules这个开源工程。
  这个工程项目收集了大量框架的ProGuard规则配置,在开发过程中,如果需要添加各个框架ProGuard的配置规则,可以参考工程下的Android·Library·Module的proguardrules/rules目录,一个文件就是一个框架的ProGuard规则。

Usage

这里提供三种使用方法,依个人爱好决定。

1.Gradle Dependencies

   dependencies {
       compile 'com.tong.proguardrules:proguardrules:latest.release'
   }
2.FileTree

src同级目录下新建文件夹,如rules,然后将需要的配置规则文件复制进去,然后进行以下配置。

   android {
       ...
       buildTypes {
           release {
               ...
               minifyEnabled true
               proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
               proguardFiles fileTree(dir: 'rules', include: ['*.pro']).asList().toArray()
           }
       }
   }
  • 在Gradle Plugin 2.2.0 以下,还可以使用以下语法:
   android {
       ...
       buildTypes {
           release {
               ...
               minifyEnabled true
               proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
               FileCollection proguardFileCollection = files { file('./rules').listFiles() }
               proguardFiles(proguardFileCollection)
           }
       }
   }
3.Files

直接将文件复制到proguard-rules.pro同级目录下,然后进行以下配置。

   android {
       ...
       buildTypes {
           release {
               ...
               minifyEnabled true
               proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
               proguardFile 'proguard-eventbus.txt'
               proguardFile 'proguard-google-play-services.txt'
               proguardFile 'proguard-gson.txt'
           }
       }
   }

Libraries

这些ProGuard规则包含以下的框架:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,523评论 25 708
  • afinalAfinal是一个android的ioc,orm框架 https://github.com/yangf...
    passiontim阅读 15,569评论 2 45
  • 框架:提供一定能力的小段程序 http://www.cnblogs.com/jincheng-yangchaofa...
    姑娘请别为难小僧阅读 7,332评论 0 132
  • 我跪在大殿中央,十万尊者齐宣法号,加诸在我额间的法印金光盛起,又深了几分。 我佛满脸悲悯:我欲渡你,奈何自甘堕入阿...
    青青漓人阅读 445评论 0 1
  • 突然被一阵冷风吹的打个寒颤,在冷风中感受到了一个自私的我。这种没由来的感觉才更让人惶恐,让人不知所措。与其在漆黑的...
    孤于我阅读 287评论 0 1