加快android studio 编译速度(已更新至Android Studio 3.3.1)

1.加快AS启动速度

“Help”-"Edit Custom Properties...",在文件中输入

# custom Android Studio properties
disable.android.first.run=true

PS:AS在第一次打开的时候会连网更新(翻樯),我们的目的就是把联网下载操作屏蔽掉,实测在AS 3.3.1中效果不明显。

 

2.增加运行环境内存

“Help”-"Edit Custom VM Options...",在文件中输入

# custom Android Studio VM options, see https://developer.android.com/studio/intro/studio-config.html
-Xms512m
-Xmx4096m
-XX:MaxPermSize=2048m
-XX:ReservedCodeCacheSize=1024m

PS:-Xms是AS初始分配的堆内存大小,-Xmx是AS最大分配的堆内存大小。AS运行越久,内存越不足的时候,就会频繁的触发GC,AS就自然会卡起来了,严重的直接黑屏,所以,我们把对应的所需内存都配置大一些。笔者使用的是8G内存,修改后效果还算明显。

 

3.取消一些联网操作或使用离线模式

打开“File-Settings-Appearance&Behavior-System Settings-Update”,取消选择“Automatically check updates for”和“Use secure connection”

打开“File-Settings-Build,Execution,Deployment-Gradle”,选择“Use local gradle distribution”,勾选“Offline work”

PS:有时候没有必要使gradle进行联网操作,勾选gradle会使得速度更快,但同时存在一个问题:如果项目中用到了一些其它的第三方库,会无法下载,所以可酌情使用。

 

4.优化编译方案(推荐)

新建“gradle.properties”文件。

/home/<username>/.gradle/ (Linux) 
/Users/<username>/.gradle/ (Mac) 
C:\User\<username>/.gradle/ (Windows)

打开 gradle.properties 文件,添加下列代码:

org.gradle.daemon=true  
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
org.gradle.parallel=true
org.gradle.configureondemand=true

PS:上面的代码主要是给gradle单独开启了一个守护线程,并且指定使用并行编译。上面的配置是针对全局的,如果只想针对单个项目,可以只修改这个项目下的gradle.properties文件。另外,AS本身也提供了一些编译优化选项:

打开“File-Settings-Build,Execution,Deployment-Compiler”,勾选下列复选框

 PS:勾选的第一项为并行设置,第二项为离线工作设置。第三项为开启自动编译,第四项为配置守护进程。

 

5.优化项目结构

尽量将第三方库的jar、aar文件导入自己的项目,或者将第三方库下载到本地,然后当做一个本地模块导入自己的项目,不要再使用gradle中的maven依赖了(使用offline模式就会报错)。

 

6.其它

有条件的话最好还是升级下硬件。上SSD,升级内存(最好在8G以上,我公司项目涵盖多个模块,平时开个AS,项目文档,再打开个虚拟机,浏览器,过一会内存就吃紧,不得不关闭一些暂时不用的窗口,很浪费时间)。

 

posted @ 2018-11-02 11:45  夜行过客  阅读(1007)  评论(0编辑  收藏  举报