随着项目的代码以及依赖库的日益增多,构建的速度倒是愈来愈慢,Android Studio2.0 以后提供了Instant Run貌似福利来了,但通过一段时间的使用发现不尽如人意,最大的吐槽点是首次编译的速度真是慢的让人抓狂,编译当前的项目就得5分钟左右。。。html
因此,我对Instant Run的目前选择是从入门到放弃。。。转而寻求其余方法,将构建耗时从5分钟减小到1分钟多,在此分享给感兴趣的同窗。java
1、建立配置文件
打开Mac用户名下的.gradle文件夹,在如下目录中:
/Users/username/.gradle/
android
新建一个gradle.properties文件,并在里面添加如下内容android-studio
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
# Project-wide Gradle settings.# IDE (e.g. Android Studio) users:# Settings specified in this file will override any Gradle settings# configured through the IDE.# For more details on how to configure your build environment visit# http://www.gradle.org/docs/current/userguide/build_environment.html# The Gradle daemon aims to improve the startup and execution time of Gradle.# When set to true the Gradle daemon is to run the build.# TODO: disable daemon on CI, since builds should be clean and reliable on servers
org.gradle.daemon=
true# Specifies the JVM arguments used for the daemon process.# The setting is particularly useful for tweaking memory settings.# Default value: -Xmx10248m -XX:MaxPermSize=256m
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=
512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-
8# When configured, Gradle will run in incubating parallel mode.# This option should only be used with decoupled projects. More details, visit# http://www.gradle.org/docs/current/userguide/multi_project_builds.html #sec:decoupled_projects
org.gradle.parallel=
true# Enables new incubating mode that makes Gradle selective when configuring projects.# Only relevant projects are configured which results in faster builds for large multi-projects.# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:configuration_on_demand
org.gradle.configureondemand=
true
上面的这些参数也能够配置到前面的用户目录下的gradle.properties文件里,那样就不是针对一个项目生效,而是针对全部项目生效。
上面的配置文件主要就是作, 增大gradle运行的Java虚拟机的大小,让gradle在编译的时候使用独立进程,让gradle能够平行的运行。jvm
2、配置Android Studio的Gradle
在android studio的配置中,开启offline模式,以及修改配置。实际上的配置和上面的一大段同样,主要是在这个地方配置的只会在ide构建的时候生效,命令行构建不会生效。
ide

3、配置当前项目core下build.gradle
添加dex增量编译
这仍是一个实验性的功能,可是仍是推荐打开试试,设置dexOptionsgradle
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
dexOptions {
incremental
true
javaMaxHeapSize
"8g"
jumboMode =
true
preDexLibraries =
true
threadCount =
8
}
以上就配置完毕,若是哪位同窗有更好的方法,欢迎拍砖~ui