转自链接http://bbs.itheima.com/thread-204217-1-1.html

 
使用Android Studio进行开,随着项目的增大,依赖库的增多,构建速度越来越慢,现在最慢要6分钟才能build一个release的安装包,在网上查找资料,发现可以通过一些配置可以加快速度,这里跟大家分享一下。
 
开启gradle单独的守护进程

在下面的目录下面创建gradle.properties文件:

  • /home//.gradle/ (Linux)
  • /Users//.gradle/ (Mac)
  • C:\Users\\.gradle (Windows)
  • 把下面配置复制gradle.properties文件也可以优化:
# 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可以平行的运行。

1.申请大内存

installation path\studio64.exe.vmoptions or studio.exe.vmoptions

使用文本编辑器打开,找到起始两行,如下

-Xms128m
-Xmx750m

修改最小值和最大值,建议为

-Xms256m
-Xmx2048m

2 优化编译

file->setting->compile

勾选除第二项之外的其他选项,并在VM options里填入:

-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

经过测试,编译速度有很大提升,比较大的项目从之前的5-8分钟可以减少到1-2分钟。

用命令行Build

可以参考这个讨论串

https://plus.google.com/u/0/+RicardoAmaral/posts/e9PG6vSN5w3

gradle assembleDebug

实测速度快50%左右 原理不明

回头写个脚本 build完成再自动安装运行应该就好了

 
设置idea.properties文件:
最后一行添加:disable.android.first.run=true。可以跳过开机检测

最新文章

  1. 对于多个列的转行(一个值均匀分布在两个列中),对于个别字段通过取别名,join方式解决。
  2. loadruner知识点小结
  3. 【Avalon】factory
  4. Essential C++中文版——满汉全席之外
  5. db2死锁分析与处理
  6. Bone Collector II
  7. 搭建 hexo,在执行 hexo deploy 后,出现 error deployer not found:github 的错误
  8. [BZOJ 1816] [Cqoi2010] 扑克牌 【二分答案】
  9. ASP.NET页面上传文件时提示文件大小超过请求解决方法
  10. Using F2 to Rename Open Files
  11. CubeMX使用及感受
  12. ORA-01658: 无法为表空间 YJXT 中的段创建 INITIAL 区
  13. spring3-struts2整合
  14. Codeforces 524 解题报告
  15. 转sql server新增、修改字段语句(整理)
  16. 【Shiro】小读Shiro Filter
  17. CentOS7配置网络
  18. ubuntu 14.04 使用 xfce4 的时候,会有图标问题
  19. JavaScript Dom基础-9-Dom查找方法; 设置DOM元素的样式; innerHTML属性的应用; className属性的应用; DOM元素上添加删除获取属性;
  20. 【jar包删除,再添加版本更高的jar】******.jar in project cnnot be read or is not a valid

热门文章

  1. 转:ibatis动态sql
  2. 五分钟理解一致性哈希算法(consistent hashing)
  3. uva10375 Choose and Divide(唯一分解定理)
  4. FatMouse's Speed——J
  5. 03.深入javascript
  6. CSS实现元素水平/垂直居中的方法
  7. LruCache为GridView异步加载大量网络图片
  8. 使用安卓手机上的shh软件ConnectBot管理您的Linux服务器
  9. C# 的一些语法特性
  10. partnerv2.1