Android studio 2.2 当中有一项新的功能:Dex In Process. 这项功能可以动态的加快编译速度,以及提高Instant Run 的效率。
那么怎么来使用这项新功能呢?你只需要修改 gradle.properties 这个文件,增加虚拟内存分配给 gradle 从1GB 到 最小 2GB。
org.gradle.jvmargs=-Xmx1536m
Android studio 默认分配给 Gradle Daemon 的虚拟内存大约是 1GB左右,但是这个完全无法支持 DexInProcess 的需求,因此至少要2GB或者更高。
图片是某大神分享的,我就搬来用啦.
只要当前分配的内存空间是足够的,那么Dex in Process 就会默认开启,这个也是 Android Studio 2.2 中提高编译速度而加入的,结果是显而易见的,而且不仅仅是编译速度,包括 Instant Run 也有明显的提高。
工作原理
Dex in Process 是利用把多个 DEX processes 合并为到一个 VM 中,在 Gradle build 中使用。这就是为什么需要额外的内存来做这件事情。
如果你曾经增大了 javaMaxHeapSize超过1GB,这个是定义 在 module 层级当中的 build.gradle, 那么你必须也要增大分配给 Gradle Daemon 的内存才可以。
图片是某大神分享的,我就搬来用啦.
只要当前分配的内存空间是足够的,那么Dex in Process 就会默认开启,这个也是 Android Studio 2.2 中提高编译速度而加入的,结果是显而易见的,而且不仅仅是编译速度,包括 Instant Run 也有明显的提高。