说明
刚进公司,由于公司准备新地方,所以电脑不够用,先用自己的电脑开发。然后配置环境,AS运行新项目,第一次大概花了20多分钟,等得蛋都碎了一地。以为接下来会没事,鬼知道第二次还是10多分钟,我直接疯掉。然后网上查了下资料,总结了一些笔记,分享给大家。
参考网站
参考步骤
第一步:配置.gradle文件夹目录(开启Gradle单独守护线程)
在windows系统的C:\Users\用户名\.gradle目录下创建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 启用新的孵化模式
还可以在当前项目中的gradle.properties文件中添加以上内容,则只会在当前项目生效
第二步:修改android studio配置
Ctrl+Alt+S打开设置选项卡,找到Gradle选项,选中offline work,点击apply,如下
gradle选项配置
找到Compiler选项,设置如下
compiler选项配置
设置网络代理,增加访问网络速度,具体请参考提供的网站
在具体开发module的build.gradle文件中添加
dexOptions {
//使用增量模式构建
incremental true
//最大堆内存
javaMaxHeapSize "8g"
//是否支持大工程模式
jumboMode = true
//预编译
preDexLibraries = true
//线程数
threadCount = 8
}
第三步:如果编译还是很慢的话,那就只能添加内容条和固态硬盘了
另一种神速编译方式,使用命令行脚本的方式编译
第一步:在目标项目的根节点下创建文件c.bat(名字尽量短) -->构建脚本,内容如下:
@Echo Off
if /i "%1"=="" goto :default
if /i "%1"=="i" goto :install
if /i "%1"=="u" goto :uninstall
::执行实际的命令
goto :raw
::无参数情况下的默认执行命令
:default
gradlew iD
goto :eof
::实际命令
:raw
gradlew %1
goto :eof
::安装所有Debug版本的APK
:install
gradlew iD
goto :eof
::卸载所有版本的APK
:uninstall
gradlew uA
goto :eof
第二步:在AS控制台的命令行Terminal窗口输入刚才的文件名,然后回车就好了,编译成功,然后打开应用
这种方式好像是会更快一些,而且不会导入整个电脑的卡顿,总的来说这种方法应该值得推荐。
总结:经过以上的配置之后,我的编译速度快了一些,但是还是很漫长需要2-3分钟,我估计是电脑的原因,该换配置了
欢迎大家访问我的简书,博客和GitHub。