优化Android Studio/Gradle构建
使用Android Studio进行开,随着项目的增大,依赖库的增多,构建速度越来越慢,现在最慢要6分钟才能 build一个release的安装包,在网上查找资料,发现可以通过一些配置可以加快速度,这里跟大家分享一下。
开启gradle单独的守护进程
1. 在下面的目录下面创建gradle.properties文件: C:\Users\<username>\.gradle (Windows) /home/<username>/.gradle/ (Linux) /Users/<username>/.gradle/ (Mac) 2. 把下面配置复制gradle.properties文件也可以优化: # Project-wide Gradle settings. # IDE (e.g. Android Studio) users: # Settings specified in this file will override any Gradle settings # configured through the IDE. # For more details on how to configure your build environment visit # http://www.gradle.org/docs/current/userguide/build_environment.html # The Gradle daemon aims to improve the startup and execution time of Gradle. # When set to true the Gradle daemon is to run the build. # TODO: disable daemon on CI, since builds should be clean and reliable on servers org.gradle.daemon=true # 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 # Enables new incubating mode that makes Gradle selective when configuring projects. # Only relevant projects are configured which results in faster builds for large multi-projects. # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:configuration_on_demand org.gradle.configureondemand=true
同时上面的这些参数也可以配置到前面的用户目录下的gradle.properties文件里,那样就不是针对一个项目生效,而是针对所有项目生效。
上面的配置文件主要就是做, 增大gradle运行的java虚拟机的大小,让gradle在编译的时候使用独立进程,让gradle可以平行的运行。
- 1.申请大内存
installation path\studio64.exe.vmoptions or studio.exe.vmoptions 使用文本编辑器打开,找到起始两行,如下 -Xms128m -Xmx750m 修改最小值和最大值,建议为 -Xms256m -Xmx2048m
- 2 优化编译
file->setting->compile 勾选除第二项之外的其他选项,并在VM options里填入: -Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
经过测试,编译速度有很大提升,比较大的项目从之前的5-8分钟可以减少到1-2分钟。
用命令行Build
可以参考这个讨论串
https://plus.google.com/u/0/+RicardoAmaral/posts/e9PG6vSN5w3
gradle assembleDebug
实测速度快50%左右 原理不明
回头写个脚本 build完成再自动安装运行应该就好了

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
【直播系列之三】揭秘阿里云直播产品功能
阿里云视频直播服务(LiveVideo)是基于领先的内容接入与分发网络和大规模分布式实时转码技术打造的音视频直播平台,提供便捷接入、高清流畅、低延迟、高并发的音视频直播服务。 视频直播服务提供Web管理控制台、API和软件开发工具包。您可以通过它们使用、管理视频直播服务,也可以与您自己的应用和服务集成。 所有服务按使用付费,服务能力自动伸缩,告别复杂的架构设计和编程开发,维护成本几近于零,使您可以专注于业务逻辑实现及最终用户体验的提升。 下面我们来看下阿里云直播产品都有哪些功能? 控制台 功能 描述 直播加速域名管理 支持直播加速域名的创建,删除操作 直播录制设置 直播录制创建,存储路径选择,文件名称编辑操做 直播转码设置 针对每个AppName创建不同转码模板 直播流管理 分别对实时直播流与历史直播流进行查询 直播流黑名单管理 对流进行黑名单设置与删除 直播录制
- 下一篇
用几十行代码写一个可以在PC Web,PC桌面,安卓,iOS上运行的程序
有一种撤退不叫撤退,叫战略转移。 如果你想尽快的开发一款应用,并且将它发布到尽量多的用户手中,Flash是目前的最佳选择。 很多人对Flash的认识仅限于网络动画、视频播放,却不知道,不知不觉之间,Flash已经成为了一个软件开发平台。下面,演示一下用这个软件开发平台开发一个demo应用,并将它以多种形式发布。 这个演示只是给读者一个直观认识——Flash的优势是什么。 ==== 开发一个等待的动画(一个圈,转啊转),这个动画要能够在PC机浏览器上看,也可以下载下来到本地看,也可以在Android平台上看,也可以在iOS平台上看。(Linux等由于用户群太小,忽略了,虽然,也能做到)。 下面是我写的动画控件(AppleStylePreloader,用的我自己的控件解决方案): View Code 1:PC Web发布 建立一个Flex Web项目,代码: <? xmlversion="1.0"encoding="utf-8" ?> < common:Application xmlns:fx ="http://ns.adobe.com/mxml/2009" xml...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- CentOS关闭SELinux安全模块
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- MySQL8.0.19开启GTID主从同步CentOS8
- Red5直播服务器,属于Java语言的直播服务器