AndroidStudio编译提速,快过eclipse

AndroidStudio正式版推出后,相信更多的同学都在准备将项目迁移出eclipse,拥抱IDE的未来——AndroidStudio。而有的同学可能与我一样,在某一阶段,发现AndroidStudio的编译速度实在不可恭维。

我的个人项目刚迁移到AndroidStudio后,编译时间居然最少1分钟,IDE也经常卡死。这难道就是官方所说的解放生产效率吗?本人决定信Google一次,花几天时间研究下编译慢的原因。结果,现在编译速度11秒,已经全面超越eclipse。


原项目(eclipse中、非Gradle或Maven编译)的情况:

引用了6个库工程,还有若干jar和so。

eclipse时:编译流畅。

刚迁移到AndroidStudio时:至少1分钟,缓慢。

现在:11秒。


归纳起来从以下几个几个角度提速:
  • 项目减肥
  • IDE(jvm)配置
  • Gradle的几个参数
最关键的是第一条。jvm和Gradle参数的修改效果不一定明显。

项目减肥

   1.  不要引用库Module。 AndroidStudio慢的主要原因是大量 磁盘IO ,这是跟eclipse上很大的不同(eclipse多几个库工程对编译时间影响不大)。 所以,直接在Gradle中引用这些库吧。
这里说明下,如果是maven中央库没有的项目,可以把该库打包成aar,然后引用:
到该库Mudule的build目录下搜*.aar,这个aar可以直接被本地引用; build.gradle简单修改下。然后移除对该库Module的依赖,删除就行了。
   2.   使用本地库(jar或aar),而不是远程库。 绝大多数项目build.gradle的dependencies都是远程引用(jcenter()或mavenCenter()),但鉴于中国的网络(访问maven中央库和sonatype等),使用本地库绝对能加快项目的编译。因为Gradle 每次 编译都会去检查这些库的更新。
位置(Windows ):C:\USER\用户\.gradle,搜索*.aar。得到的就是原来每次Gradle编译时远程下载的aar包。然后同上一步进入该aar。
       
当然也可以mvn -install添加到maven本地库中,然后通过mavenLocal()引入;但没有上面的方法简单。
这样的方式唯一不比远程引用的是,不能自动更新到该第三方库的最新版本;但赢得了编译时间。
   3.  不用单元测试的话,删除Test目录。


IDE优化

   1.  IDE的vm主配置文件。
        
        与eclipse的jvm优化一样,跟局电脑的硬件配置修改。

2.  延迟自动保存
        
        IDEA不同于eclipse和word等,是自动保存的。如果想降低性能负担,可以取消立即保存,置为延迟30秒。

3. 停用不用的 插件
        
        注意的是, Maven插件不能停用,因为项目的默认的jcenter()依赖于它。

Gradle的几个参数

Android开发团队的Google+有篇旧文章,给了Gradle的几个参数。。。。
https://plus.google.com/108967384991768947849
位置: 1. 本 工程的gradle.properties文件。 
            2. C :\USER\用户\.gradle下新建gradle.properties。
        参数: 1. deamon:会在第一次编译后,将gradle进程驻留。
              2. parallel:会为子项目另开一个进程。
                3. dex***:减少这个低效率流程。





猜你喜欢

转载自blog.csdn.net/na_simon2900086/article/details/42009487