Gradle 5个插件推荐

• 5 分钟阅读 • 安卓

AndResGuard

AndResGuard 是一个缩小 apk 体积和资源混淆的工具,它的工作原理和 Java Proguard 类似,但是只针对资源。它会将原本冗长的资源路径变短,例如将 res/drawable/wechat 变为r/d/a,把文件资源 wechat.png 重命名为 a.png,最后它会使用 7zip 重新压缩 apk,已达到减小应用体积的目的。
AndResGuard (5300+ stars): https://github.com/shwenzhang/A

packer-ng-plugin

PackerNg 是一个极速渠道打包工具,打 100 个渠道包只需要 10 秒钟。它同时支持集成打包和脚本打包,而且配置相当灵活,你还可以在代码中进行对渠道进行配置。另外,它也有详尽的插件配置示例说明,所以使用起来还是非常方便的。
packer-ng-plugin (3900+ stars): https://github.com/mcxiaoke/pac

Booster

Booster 是一款专门为移动应用设计的易用、轻量级且可扩展的质量优化框架,其目标主要是为了解决随着 APP 复杂度的提升而带来的性能、稳定性、包体积等一系列质量问题。

Booster 提供了性能检测、多线程优化、资源索引内联、资源去冗余、资源压缩、系统 Bug 修复等一系列功能模块,可以使得稳定性能够提升 15% ~ 25%,包体积可以减小 1MB ~ 10MB。
packer-ng-plugin (4100+ stars): https://github.com/didi/booster

gradle-packer-plugin

gradle-packer-plugin 是Android多渠道打包工具Gradle插件,可方便的于自动化构建系统集成,通过很少的配置可实现如下功能 :

Ruler

Ruler 可帮助您分析 Android 应用程序的大小。为您的每个应用变体添加任务。运行此任务将构建应用程序并生成 HTML 报告,您可以使用它来分析应用程序大小。如果您想进一步处理数据,它还将生成 JSON 报告。
packer-ng-plugin (1k stars): https://github.com/spotify/ruler

其他插件推荐

● access-inline-plugin(access方法内联)
● shrink-r-plugin(R文件瘦身和无用资源检查)
● closeable-check-plugin(文件流的close检查)
● const-inline-plugin(常量内联)
● field-assign-opt-plugin(优化多余赋值指令)
● getter-setter-inline-plugin (getter和setter方法内联)
● method-call-opt-plugin(干净地删除某些方法调用,如Log.d)
● coverage-plugin(线上代码覆盖率)
● refer-check-plugin(检查是否有调用不存在的方法和引用不存在的字段)
● serialization-check-plugin(序列化检查)
● SourceFileKiller(删除SourceFile和行号属性,作为示例)
● ButterKnifeChecker(检测跨module使用ButterKnife可能导致的问题)
● RFileKnife(修复R.java太大编译报code too large的问题)

阅读进度 0%