虽然Android Studio 此时已经更新到了Android Studio 2.1版本,build 版本android-studio-bundle-143.2739321。但是在安装该版本都是根据自己的标准进行安装,所以需要在安装之后进行一系列的调整。下面文章根据3个方面进行讲解。分别为Android Studio本身、Gradle、不调整出现的编译上的问题。

Android Studio优化

编译优化需要有两个步骤,以下一一介绍。

步骤一:Gradle编译优化

在项目的根目录中进行修改。修改gradle.properties,

gradle.properties 该文件的位置(H/gradle.properties)

Project-wide Gradle settings. 
IDE (e.g. Android Studio) users: 
Gradle settings configured through the IDE will override 
any settings specified in this file.

For more details on how to configure your build environment visit 
http://www.gradle.org/docs/current/userguide/build_environment.html

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

根据该文件的描述,我的设置为:

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

名词解释 
这里可以参考: 
http://www.cnblogs.com/mingforyou/archive/2012/03/03/2378143.html 
- org.gradle.jvmargs :JVM 内存管理,存在于堆上。在这里可以理解为Gradle的内存管理 
- -Xms : 初始分配的内存由-Xms指定,堆内存。 
- -Xmx : 最大分配的内存由-Xmx指定,堆内存。 
- -XX:PermSiz:JVM使用-XX:PermSize设置非堆内存初始值 
- -XX:MaxPermSize设置最大非堆内存的大小 
- org.gradle.daemon=true 
- org.gradle.parallel=true

步骤二:Android Studio 优化

找到Android Studio安装目录。 
我的安装目录在F:\Android\AndroidStudio\Soft\bin 
在这个文件 gradle.properties

-server 
-Xms512m 
-Xmx2048m 
-XX:MaxPermSize=350m 
-XX:ReservedCodeCacheSize=240m 
-XX:+UseConcMarkSweepGC 
-XX:SoftRefLRUPolicyMSPerMB=50 
-da 
-Djna.nosys=true 
-Djna.boot.library.path=

-Djna.debug_load=true 
-Djna.debug_load.jna=true 
-Dsun.io.useCanonCaches=false 
-Djava.net.preferIPv4Stack=true 
-XX:+HeapDumpOnOutOfMemoryError 
-Didea.paths.selector=AndroidStudio2.1 
-Didea.platform.prefix=AndroidStudio

从这个文件中,可以根据上面上面的名词解释中进行理解性修改。上面是我自己的设置。

优化前 - 存在的问题

transformClassesWithDexForDebug

  1. Error:Execution failed for task ‘:app:transformClassesWithDexForDebug’. 
    com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process ‘command ‘C:\Program Files\Java\jdk1.8.0_77\bin\java.exe” finished with non-zero exit value 3
  2. Error:UNEXPECTED TOP-LEVEL ERROR:
  3. Error:java.lang.OutOfMemoryError: GC overhead limit exceeded
  4. For faster builds, increase the maximum heap size for the Gradle daemon to more than 2048 MB. 
    To do this set org.gradle.jvmargs=-Xmx2048M in the project gradle.properties. 
    For more information see https://docs.gradle.org/current/userguide/build_environment.html

原因

在使用Gradle编译的时候,编译内存不足导致。

解决方法

在项目的根目录中进行修改。修改gradle.properties, 
set org.gradle.jvmargs=-Xmx2048M。 
修改后该问题得已解决。

Android Sutido 编译速度优化的更多相关文章

  1. dWebpack编译速度优化实战

    当你的应用的规模还很小时,你可能不会在乎Webpack的编译速度,无论使用3.X还是4.X版本,它都足够快,或者说至少没让你等得不耐烦.但随着业务的增多,嗖嗖嗖一下项目就有上百个组件了,也是件很简单的 ...

  2. 使用ant优化android项目编译速度,提高工作效率

    1.Android项目编译周期长,编译项目命令取消困难 2.在进行Android项目的编译的同时,Eclipse锁定工作区不能进行修改操作 3.在只进行资源文件的修改时,Eclipse对资源文件的修改 ...

  3. 加快android studio 编译速度

    工程build一次太慢  经过各种搜索 整合以下 仅供参考 1.在下列目录中新建 gradle.properties 文件 /home//.gradle/ (Linux) /Users//.gradl ...

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

    1.加快AS启动速度 “Help”-"Edit Custom Properties...",在文件中输入 # custom Android Studio properties di ...

  5. 加速Android Studio编译速度

    一.修改运行内存 进入项目,菜单栏-help-Edit Custom VM Option   Paste_Image.png 添加或修改为: -Xms2048m -Xmx2048m -XX:MaxPe ...

  6. 【转】实践最有效的提高Android Studio运行、编译速度方案

    原文:https://blog.csdn.net/xwh_1230/article/details/60961723 实践最有效的提高Android Studio运行.编译速度方案 最有效提升Andr ...

  7. android studio 编译加速

    1. http://www.52codes.net/article/658.html 2.http://my.oschina.net/sammy1990/blog/388846 3.http://st ...

  8. Android Studio优化编译速度

    随着Android Studio的不断完善,其安卓开发者阵营也基本从Eclipse转移到了Android Studio,毕竟Android Studio是谷歌亲力亲为开发的官方开发软件.不过其最重要的 ...

  9. [COCOS2DX]交叉编译实践+速度优化(vs2012修改win32代码+修改makefile+编译安卓项目包+部署安卓项目包到Eclipse+运行apk)

    通过前面的部署过程可以知道cocos2dx的开发过程如下: 1.VS2012完成修改 2.因为指定了CPP文件位置,ndk可以通过jni方式完成C++文件的编译,运行以下命令完成proj.androi ...

随机推荐

  1. 29、activity横竖屏切换细节问题

    1 import android.app.Activity; import android.content.Intent; import android.os.Bundle; import andro ...

  2. pip 安装python环境及打包

    0.安装虚拟环境 pip install virtualenv   virtualenv env1   source env1/bin/activate   1. 将包依赖信息保存在requireme ...

  3. RESTLET开发实例

    1 前提 由于近期工作的需要,要把RESTLET应用到项目中,于是在网上参考了一些资料的基础上,实践了一个关于RESTLET接口的小例子. Restlet的思想是:HTTP客户端与HTTP服务器之间的 ...

  4. Sort--快速排序

    快速排序 1 public class QuickSort{ 2 3 public static int Partition(int[] a,int low,int high){ 4 int pivo ...

  5. Android反编译基础(apktoos)--广工图书馆APK

    更多精彩内容 :http://www.chenchuangfeng.com QQ:375061590 ------------------------------------------------- ...

  6. 2-SAT模板

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAABcAAAAXCAYAAADgKtSgAAAFCUlEQVR42n2VeVCUdRzGf3n0T/80ld

  7. mysql 查询多个id

    select * from b1 where find_in_set('4',id); select * from b1 where id in (1,2,3,22);

  8. STC12C5A60S2片内存储器介绍

    STC12C5A60S2内部集成RAM 1280字节,其中 内部RAM(data):256 Byte 内部扩展RAM(xdata):1024 Byte 支持片外扩展RAM: 64kB STC12C5A ...

  9. hdu 1034 Candy Sharing Game

    Candy Sharing Game Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  10. Qt 固定窗口【worldsing 笔记】

    w.setWindowFlags(Qt::WindowMinimizeButtonHint); //禁止最大化按钮 w.setFixedSize(1024,587);//固定窗口大小