Android Studio用起来越来越顺手,但是却发现Build的速度实在不敢恭维,在google和度娘了几把(....)之后,大体就是分配更高的内存,步骤:Setting-->搜索gradle-->Build Tools下的Gradle选项,右侧Gradle VM options-->改参数-Xmx2048m -XX:MaxPermSize=512m

还一种就是在gradle.properites里加两行
org.gradle.parallel=true
org.gradle.daemon=true

以上真的有提升么。我也不清楚,反正build的速度还在3分钟上下,这是完全不能接受的,build一次能下一部高清AV,硬盘都快满了,又要加硬盘了,这个月的伙食质量要下降了,要瘦出8块腹肌了....

好吧,以上都是废话,怎么以闪电般的速度Build呢,设置离线编译就OK了,like this:

这才叫提升,OK?


gradle更换仓库 解决下载速度慢问题

如果项目里的maven 仓库地址比较慢,一般默认是访问主仓库,所以比较慢,换用国内的仓库就好了,推荐换用阿里云的仓库地址

方法一:

这种方法只对当前项目有效

将build.gralde

repositories {
mavenCentral()
}

换成

allprojects {
repositories {
maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
}
}

方法二:

这种解决方法是对所有项目生效的

在gradle目录里,新建一个文件init.gradle将以下代码段粘贴进去。
一般来说,这里的gradle目录 默认是:C:\Users\用户名.gradle ,
当然你也可以自己指定,需要不过需要建立一个环境变量GRADLE_USER_HOME,并且重启计算机。
比如

GRADLE_USER_HOME = D:\java\gradle
 
配置环境变量

访问的是阿里云的服务器,速度还是蛮快的

allprojects{
repositories {
def REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public/'
all { ArtifactRepository repo ->
def url = repo.url.toString()
if ((repo instanceof MavenArtifactRepository) && (url.startsWith('https://repo1.maven.org/maven2') || url.startsWith('https://jcenter.bintray.com'))) {
project.logger.lifecycle 'Repository ${repo.url} replaced by $REPOSITORY_URL .'
remove repo
}
}
maven {
url REPOSITORY_URL
}
}
}

当然如果你发现了,更好的maven仓库地址,你也可以将以上的阿里云的服务器地址换成你想要的地址。

作者:bsqql123
链接:https://www.jianshu.com/p/ac4b7302200b
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

 

加快gradle的编译速度总结-亲身经历

说明

刚进公司,由于公司准备新地方,所以电脑不够用,先用自己的电脑开发。然后配置环境,AS运行新项目,第一次大概花了20多分钟,等得蛋都碎了一地。以为接下来会没事,鬼知道第二次还是10多分钟,我直接疯掉。然后网上查了下资料,总结了一些笔记,分享给大家。

参考网站

参考步骤

第一步:配置.gradle文件夹目录(开启Gradle单独守护线程)

  • 在windows系统的C:\Users\用户名\.gradle目录下创建gradle.properties文件(有直接用),然后添加以下内容,添加之后会在所以的项目中生效(有内容则并入),添加后全局生效

      org.gradle.daemon=true  // 开启线程守护,第一次编译时开线程,之后就不会再开了
    org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 // 配置编译时的虚拟机大小
    org.gradle.parallel=true // 开启并行编译,相当于多条线程再走
    org.gradle.configureondemand=true 启用新的孵化模式
  • 还可以在当前项目中的gradle.properties文件中添加以上内容,则只会在当前项目生效

第二步:修改android studio配置

  • Ctrl+Alt+S打开设置选项卡,找到Gradle选项,选中offline work,点击apply,如下

     
    gradle选项配置
  • 找到Compiler选项,设置如下

     
    compiler选项配置
  • 设置网络代理,增加访问网络速度,具体请参考提供的网站

  • 在具体开发module的build.gradle文件中添加

      dexOptions {
    //使用增量模式构建
    incremental true
    //最大堆内存
    javaMaxHeapSize "8g"
    //是否支持大工程模式
    jumboMode = true
    //预编译
    preDexLibraries = true
    //线程数
    threadCount = 8
    }

第三步:如果编译还是很慢的话,那就只能添加内容条和固态硬盘了


另一种神速编译方式,使用命令行脚本的方式编译

  • 第一步:在目标项目的根节点下创建文件c.bat(名字尽量短) -->构建脚本,内容如下:

      @Echo Off
    
      if /i "%1"=="" goto :default
    if /i "%1"=="i" goto :install
    if /i "%1"=="u" goto :uninstall ::执行实际的命令
    goto :raw ::无参数情况下的默认执行命令
    :default
    gradlew iD
    goto :eof ::实际命令
    :raw
    gradlew %1
    goto :eof ::安装所有Debug版本的APK
    :install
    gradlew iD
    goto :eof ::卸载所有版本的APK
    :uninstall
    gradlew uA
    goto :eof
  • 第二步:在AS控制台的命令行Terminal窗口输入刚才的文件名,然后回车就好了,编译成功,然后打开应用

  • 这种方式好像是会更快一些,而且不会导入整个电脑的卡顿,总的来说这种方法应该值得推荐。

总结:经过以上的配置之后,我的编译速度快了一些,但是还是很漫长需要2-3分钟,我估计是电脑的原因,该换配置了

作者:笑说余生
链接:https://www.jianshu.com/p/200d55b4d40a
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。


android sdk manager设置国内镜像快速下载sdk

万恶的GFW,Android sdk manager通过google的url下载sdk卡成翔了,在网上找了几个国内镜像,亲测可用。

Android SDK在线更新镜像服务器:

中国科学院开源协会镜像站地址:

IPV4/IPV6: http://mirrors.opencas.cn 端口:80

IPV4/IPV6: http://mirrors.opencas.org 端口:80

IPV4/IPV6: http://mirrors.opencas.ac.cn 端口:80

上海GDG镜像服务器地址:

http://sdk.gdgshanghai.com 端口:8000

北京化工大学镜像服务器地址:

IPv4: http://ubuntu.buct.edu.cn/ 端口:80

IPv4: http://ubuntu.buct.cn/ 端口:80

IPv6: http://ubuntu.buct6.edu.cn/ 端口:80

大连东软信息学院镜像服务器地址:

http://mirrors.neusoft.edu.cn 端口:80

使用 Android SDK Manager下载sdk时 ,打开主界面,选择「Tools」、「Options」,弹出『Android SDK Manager - Settings』窗口:

在『Android SDK Manager - Settings』窗口中,在「HTTP Proxy Server」和「HTTP Proxy Port」输入框内填入 mirrors.neusoft.edu.cn 和 80,并且选中「Force

https://…sources to be fetched using http://…」复选框。

设置完成后单击「Close」按钮关闭重新打开即可。如下图:

 

Gradle Build速度加快方法汇总的更多相关文章

  1. android studio Gradle Build速度加快方法

    设置离线编译就可以解决这个问题了.如下图所示:

  2. Gradle Build速度加快终极方法(android studio)

    Android Studio用起来越来越顺手,但是却发现Build的速度实在不敢恭维,在google和度娘了几把(....)之后,大体就是分配更高的内存,步骤:Setting-->搜索gradl ...

  3. 加快AS的Gradle Build速度

    随着项目的代码以及依赖库的日益增多,构建的速度却是越来越慢,Android Studio2.0 之后提供了Instant Run貌似福利来了,但经过一段时间的使用发现不尽如人意,最大的吐槽点是首次编译 ...

  4. Linux 下测试磁盘读写 I/O 速度的方法汇总

    在分布式异构存储系统中,我们经常会需要测量获取不同节点中硬盘/磁盘的读写 I/O 速度,下面是 Linux 系统下一些常用测试方法(之后不定期更新): 1.使用 hdparm 命令这是一个是用来获取A ...

  5. 记——加快gradle 构建速度的经验

    Gradle作为一个新的构建系统,无疑在灵活,扩展,跨平台等各方面都表现得非常优秀,然而,它也有一点备受吐槽,就是速度慢.以下为本人使用gradle过程中,几次加快gradle构建速度的经验之谈. 本 ...

  6. 加速Android Studio的Gradle构建速度

    在利用Android Studio做项目时,发现随着项目内资源的逐渐增多(或者项目创建时间太过久远,而又未经常打开),Android Studio的build速度也越来越慢.(P.S.在做我的CSGO ...

  7. android studio 一直卡在Gradle:Build Running的解决办法

    转:android studio 一直卡在Gradle:Build Running的解决办法   在使用AS开发安卓应用程序的时候经常会遇到Gradle build running一直在运行甚至卡死的 ...

  8. 转:android studio 一直卡在Gradle:Build Running的解决办法

    在使用AS开发安卓应用程序的时候经常会遇到Gradle build running一直在运行甚至卡死的情况,解决方法如下: 方法1: 1.在C:\User\<用户名>\.gradle 目录 ...

  9. Android提升Gradle编译速度或减少Gradle编译时间.md

    目录 Android如何提升Gradle编译速度或减少Gradle编译时间 最终优化方案 优化效果比对 将所有项目源码,各种缓存临时目录都移动到高性能SSD磁盘上 gradle.properties ...

随机推荐

  1. Linux Shell脚本编程

    ⒈为什么要学习Shell编程 1)Linux运维工程师在进行服务器集群管理时,需要编写Shell程序来进行服务器管理 2)对于JavaEE和Python程序员来说,有些工作需要编写一些Shell脚本进 ...

  2. (转载)深度学习的weight initialization

    本文转自:谷歌工程师:聊一聊深度学习的weight initialization TLDR (or the take-away) Weight Initialization matters!!! 深度 ...

  3. Java的static类

    首先Java的static类只能是静态内部类.如果在外部类声明为static,程序会编译通不过. 其次,主要了解下static内部类与普通内部类的区别是什么,以及static内部类的作用是什么,详见下 ...

  4. 休眠与开机自动运行等VC代码

    //根据文件句柄,获取文件名 #include <windows.h> #include <stdio.h> #include <tchar.h> #include ...

  5. 【转】HashMap实现原理及源码分析

    哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景极其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,而HashMap的实现原理也常常出 ...

  6. SharePoint 2016: 数据库正在兼容性范围内运行,建议进行升级

    问题描述: SharePoint 运行状况分析器提示: 中文:数据库正在兼容性范围内运行,建议进行升级. 英文:Database running in compatibility range and ...

  7. spring3.1 profile 配置不同的环境

    <?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.spr ...

  8. Light OJ 1078

    题意: 给你 N,K 输出 KKKK.....KK能整除 N, 输出 K 的个数, (最小) 基础数学, 取摸运算即可. #include<bits/stdc++.h> using nam ...

  9. [转]GitHub上优秀的Go开源项目

    转载于GitHub上优秀的Go开源项目 正文 近一年来,学习和研究Go语言,断断续续的收集了一些比较优秀的开源项目,这些项目都非常不错,可以供我们学习和研究Go用,从中可以学到很多关于Go的使用.技巧 ...

  10. Hystrix浅谈

    Hystrix如何使用很多说明,看了很多博客,却发现能说明一些简单概念的文章就没有. 所以本文不太回去说如何使用 Hystrix ,但是会简明的说一下 一些概念 super(Setter.withGr ...