Android Studio 加快编译速度
2016-02-29 10:26
567 查看
已经使用Android Studio进行开发超过一年,随着项目的增大,依赖库的增多,构建速度越来越慢,现在最慢要6分钟才能build一个release的安装包,在网上查找资料,发现可以通过一些配置可以加快速度,这里跟大家分享一下。
在下面的目录下面创建
并在文件中增加:
同时修改项目下的
同时上面的这些参数也可以配置到前面的用户目录下的gradle.properties文件里,那样就不是针对一个项目生效,而是针对所有项目生效。
上面的配置文件主要就是做, 增大gradle运行的java虚拟机的大小,让gradle在编译的时候使用独立进程,让gradle可以平行的运行。
在android studio的配置中,开启offline模式,以及修改配置。实际上的配置和上面的一大段一样,主要是在这个地方配置的只会在ide构建的时候生效,命令行构建不会生效。
基于上面的配置,命令行构建时在命令后面加上这个参数即可
使用网上第三方的依赖库时尽量使用aar,可以在mavenhttp://gradleplease.appspot.com/或者githuhttps://github.com/Goddchen/mvn-repo搜索。
自己的库模块也可以打包成aar,关于这个可以参考stormzhang的文章http://www.stormzhang.com/android/2015/03/01/android-reference-local-aar/。
经过这样一番折腾,我原来需要4,5分钟才能构建完成的项目,现在只需要30秒左右就可以构建完成了。当然了,如果你这样还是不可以的话,那么,你应该换电脑了,ssd的硬盘,更大的内存,必须的上了。
原文地址:http://blog.isming.me/2015/03/18/android-build-speed-up/,转载请注明出处。
开启gradle单独的守护进程
在下面的目录下面创建gradle.properties文件:
/home/<username>/.gradle/(Linux)
/Users/<username>/.gradle/(Mac)
C:\Users\<username>\.gradle(Windows)
并在文件中增加:
1 | org.gradle.daemon=true |
gradle.properties文件也可以优化:
12 | # Project-wide Gradle settings. |
上面的配置文件主要就是做, 增大gradle运行的java虚拟机的大小,让gradle在编译的时候使用独立进程,让gradle可以平行的运行。
修改android studio配置
在android studio的配置中,开启offline模式,以及修改配置。实际上的配置和上面的一大段一样,主要是在这个地方配置的只会在ide构建的时候生效,命令行构建不会生效。
命令行构建
基于上面的配置,命令行构建时在命令后面加上这个参数即可 --daemon --parallel --offline。
引入依赖库时使用aar
使用网上第三方的依赖库时尽量使用aar,可以在mavenhttp://gradleplease.appspot.com/或者githuhttps://github.com/Goddchen/mvn-repo搜索。自己的库模块也可以打包成aar,关于这个可以参考stormzhang的文章http://www.stormzhang.com/android/2015/03/01/android-reference-local-aar/。
后记
经过这样一番折腾,我原来需要4,5分钟才能构建完成的项目,现在只需要30秒左右就可以构建完成了。当然了,如果你这样还是不可以的话,那么,你应该换电脑了,ssd的硬盘,更大的内存,必须的上了。原文地址:http://blog.isming.me/2015/03/18/android-build-speed-up/,转载请注明出处。
相关文章推荐
- android 一个手机可以打开 另一个手机打开就崩溃
- Android解耦库EventBus的使用和源码分析
- There is no ic_menu_refresh icon in android:drawable?
- 如何「偷」Android 的内存?
- Android布局— — —帧布局
- Android 反编译
- Android绚丽加载效果视图(loading)控件
- Android开发笔记(七十二)数据加密算法
- Android的Style的使用
- android sqlite查询方式
- android在进行创建项目gen下没有自动生成R.java
- Android Service和Thread的区别
- Android Media相关标准接口
- android studio gradle介绍
- android学习之RadioButton
- 深入理解LayoutInflater.inflate()
- Android布局— — —表格布局
- 使用Android Studio与ArcGIS Android SDK的开发环境部署和HelloWorld
- Android ViewPager 小圆点指示器
- Android实现Material Design风格的设置页面(滑动开关控件)