android studio heapsize,优化 Android Studio 构建速度

66b52468c121889b900d4956032f1009.png

8种机械键盘轴体对比

本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?

在项目开发中,小伙伴们一直在抱怨:“项目运行好卡啊~”。但是由于项目跟的一直很紧,一直都没有时间专心的去查找项目运行卡的原因。直到现在,终于有闲工夫来看看到底是什么原因引起的。于是,就去 google 上搜了大半天。试了各种偏方、正方。依旧没有解决这个疑难杂症。

就在要弃疗的时候,在 Android Developers 上面看到了一句话:1

2在 配置 org.gradle.jvmargs 时,如果您将 javaMaxHeapSize 设为 1280 MB,

则必须将 org.gradle.jvmargs 至少设置为 1792 MB (1280 + 512)

忽然想起来,项目中在 dexOptions 中配置了 javaMaxHeapSize = “4g”,但是在

gradle.properties 中 org.gradle.jvmargs=-Xmx1536m 却只配置了 1536m。WTF 啊,你给我配置了 4g,却把我放在了 2g 多一点的空间里,GC 一直频繁地清理内存。不卡才是见鬼了!

接下来就好办了,开始配置吧:

说明一下,以下配置的数值需要按照自己在项目中的需求来调整。如有需要先来配置一下 app/build.gradle 下的 dexOptions :1javaMaxHeapSize = 1280m然后再配置一下 gradle.properties :1

2# 1280(javaMaxHeapSize) + 512

org.gradle.jvmargs=-Xmx1792m最后还需要配置一下 Android Studio 的 studio.vmoptions 文件1

2

3

4最小堆内存 我配置的是 1024m

-Xms1024m

最主要的是这个最大堆内存,至少要与配置项目中 org.gradle.jvmargs 相同,当然越大越好

-Xmx1792m

当然官网还有一些其他的优化选项,通过整理之后大概是这样:首先在 app/build.gradle 中添加以下配置1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25android {

if (project.hasProperty('devBuild')) {

/* 关闭 multi-APK */

// 关闭 abi 拆分

splits.abi.enable false

// 关闭 density 拆分

splits.density.enable false

/* 停用 PNG 处理 */

aaptOptions.cruncherEnabled false

/* 停用 Crashlytics */

buildTypes.debug.ext.enableCrashlytics = false

/* 停用 Crashlytics 更新 Id */

buildTypes.debug.ext.alwaysUpdateBuildId = false

/* 预 dex 库依赖项 */

dexOptions.preDexLibraries true

/* 配置运行 dex-in-process 时要使用的最大线程数量 */

dexOptions.maxProcessCount 8

/* 设置最小 Api 为 21 */

defaultConfig.minSdkVersion 21

/* 只打包指定资源 */

defaultConfig.resConfigs ("zh", "xxhdpi")

}

......

}然后在 Android Studio -> Preferences -> Build, Execution, Deployment 下的 Compiler 中的 Command-line Options: 选项中填写:1-PdevBuild

或者可以用 Terminal 敲命令:1$ ./gradlew app:assembleDebug -PdevBuild

两种方式效果是一样的

通过以上配置以后,原本编译的时候还能玩会儿手机(几分钟),现在(一分钟以内)。。。我发现好像做了什么不该做的事,还是退回去吧。对不起,打扰了~~~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值