Android Studio 的Gradle编译加速度
来源:互联网 发布:互联网网络销售o2o 编辑:程序博客网 时间:2024/05/17 15:19
Android Studio 的Gradle编译加速度
好久木有写博客了,最近在用Android Studio开发APP的时候,发现一个比较坑的问题,就是编译太慢,编译一次最少都需要一分钟,实在不能忍受,于是Google了很多方法,一一试验,把结果总结了一下,如下:
一:最简单的方案
很简单的一个方案,是一个PHP大神指点的。
图片中红色框框部分的的代码注释掉,然后在编译,这是编译速度差不多会快一倍。(这种方案的缺点是会出现各种莫名其妙的问题,比喻修改不生效等等,需要不时的放开这段代码,重新编译)
二:最普遍的方案
就是网络上大家百度到的开启守护线程,开启离线编译等
在下面的目录下面创建gradle.properties文件:
/home//.gradle/ (Linux)
/Users//.gradle/ (Mac)
C:\Users\.gradle (Windows)
同时修改项目下的gradle.properties
实测效果不是特别明显
三:最实在的方案
其实gradle编译慢,主要停留在compile文件
所以我们在项目中减少compile ,尽量使用 compile files导入第三方库,有jar和aar都可以,
这些第三方库可以在maven http://search.maven.org/ 中搜索下载
在此提供本人平时一些积累的jar和aar库https://github.com/zhu260824/android_jar_aar.git 后续会持续更新
在代码中减少使用 compile 'com.android.support:appcompat-v7:23.4.0'
多使用
compile(name:'genius', ext:'aar') compile files('libs/utdid4all-1.0.4.jar')
这是加快编译最靠谱的方案,实测有效
四:热部署
热部署其实是最快的编译方案
在Android Studio中其实已经结成了热部署就是 Instant Run 所以我们编译代码时可以打开这个
但是这个不太好用,接下来,我向大家推荐一个比较好用的阿里的增量编译工具Freeline
官方地址:https://github.com/alibaba/freeline/blob/master/README-zh.md
使用方式很简单:
配置project-level的build.gradle,加入freeline-gradle的依赖:
buildscript { repositories { jcenter() } dependencies { classpath 'com.antfortune.freeline:gradle:0.8.4' }}
然后,在你的主module的build.gradle中,应用freeline插件的依赖
apply plugin: 'com.antfortune.freeline'android { ...}
一般简单的工程这些就够了,但是多个productFlavors的需要在主module的build.gradle中加入
freeline { hack true productFlavor 'your-flavor' }
如果你还自定义了Application,一定需要在则需要在主module的build.gradle中加入
freeline { hack true productFlavor 'your-flavor' applicationProxy false }
同时自定义的Application中加入
public class App extends Application { @Override public void onCreate() { super.onCreate(); FreelineCore.init(this); } }
最后,在命令行执行以下命令来下载 freeline 的 python 和二进制依赖。
Windows[CMD]: gradlew initFreeline
Linux/Mac: ./gradlew initFreeline
对于国内的用户来说,如果你的下载的时候速度很慢,你也可以加上参数,执行gradlew initFreeline -Pmirror,这样就会从国内镜像地址来下载。
注意:使用freeline 电脑需要安装python 并且配置python 环境变量
代码可以使用命令行编译:python freeline.py
提示:
- python freeline.py -f 全量编译
- python freeline.py -c 清除
- python freeline.py 增量编译
同时还可以使用还可以使用android studio插件
在Android Studio中,通过以下路径Preferences → Plugins → Browse repositories,搜索“freeline”,并安装。
Freeline第一次编译会慢一点,后面进入增量编译后比较快,我基本测试在10s以内,速度非常快!推荐使用
本次一共介绍了四种方案,推荐新项目可以三四结合使用,开启飞速编译时代!
- Android Studio 的Gradle编译加速度
- gradle编译慢的解决办法,优化android studio编译效率
- Android Studio 命令行Gradle编译
- Android Studio 命令行Gradle编译
- Android Studio Gradle编译问题
- android studio 加快gradle 编译
- Android Studio Gradle编译优化
- Android Studio/Gradle 编译加速
- 提高Android Studio/Gradle编译速度的配置
- android studio 升级 gradle成最新的编译不成功
- 简单的android studio之gradle编译加速优化
- 有时编译android studio卡在gradle的某个任务
- android studio编译的时候提示gradle版本不对
- Android Studio编译时Gradle报乱码
- Android Studio 编译Gradle提示编码错误
- Android Studio编译时Gradle报乱码
- Android Studio编译NDK app gradle配置
- Android Studio中Gradle编译配置
- CSS3.0文字方面的属性
- Java程序员应该知道的10个调试技巧
- 【PHP】fastcgi与php-fpm
- 摸爬滚打DirectX11_day07——DirectInput接口
- 图片手风琴效果
- Android Studio 的Gradle编译加速度
- request.getContextPath()介绍
- C++贪心算法实现马踏棋盘问题
- C#最简单写入读出XML配置文件
- 介绍国外15个播客,可进入
- Java多线程执行业务方法
- 虚继承
- hdu 5996 dingyeye loves stone
- Leetcode 84. Largest Rectangle in Histogram (Hard) (cpp)