Gradle知识

  Gradle是Android Studio标配的构建系统。

Android Gradle插件中文指南

任务入门

  1. 想要知道在一个项目中有哪些任务可被使用,在Terminal面板中输入以下指令,就可以打印出所有的可用任务;(或者是双击执行Gradle面板中的app --> Tasks --> help --> tasks这一项)
./gradlew tasks
  1. 运行check任务会生成一份Lint报告,Lint报告会包含所有的警告和错误,以及一份详细的说明和一个相关文档的链接。该报告位于/app/build/reports/目录下,名称为lint-results.html。
  2. 当进行生产版本的打包时,Lint将会检查那些导致应用崩溃的致命问题。一旦发现有问题,Lint就会终止构建,并在命令行界面打印错误信息。Lint也会在app/build/reports/目录下生成一份lint-results-release-fatal.html文件。

常用技巧

减少APK大小

  1. ProGuard
      ProGuard是一个Java工具,其不仅可以缩减APK文件大小,还可以在编译期优化、混淆和预校验你的代码。其通过你应用的所有代码路径,来找到未被使用的代码,并将其删除。ProGuard还会重命名你的类和字段。
android{
    buildTypes{
        release{
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
}

  当minifyEnabled被设置为true以后,在构建过程中,proguardRelease task会被执行,并调用ProGuard。
  在

  1. 缩减资源
      当给App打包时,Gradle和Gradle的Android插件可以在构建期间删除所有未使用的资源。如果你有旧的资源忘记删除了,那么这个功能非常有用。
      当导入一个拥有很多资源的依赖库,但是你只使用了其中的一小部分时,可以通过激活缩减资源来解决这个问题。
      缩减资源的方式有两种:自动、手动;

自动缩减
  就是设置 shrinkResources属性。如果设置改属性为true,则Android构建工具将自动判定哪些资源没有被使用,并将它们排除在APK外;使用该功能,必须同时启动ProGuard。因为缩减资源的工作方式是:直到代码引用这些资源被删除之前,Android构建工具不能指出哪些资源没有被用到。

//可以在Terminal中输入以下指令查看安装包缩小了多少;
./gradlew shrinkReleaseResources

手动缩减

加速构建

-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
------------------last line for now-------------------