隨着項目的代碼以及依賴庫的日益增多,構建的速度倒是愈來愈慢,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
![這裏寫圖片描述](http://static.javashuo.com/static/loading.gif)
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