Android项目快速编译之Freeline-Android的配置与集成
来源:互联网 发布:教学过程最优化 编辑:程序博客网 时间:2024/06/13 03:49
Freeline是蚂蚁金服旗下开发的一个基于动态替换的编译方案,运用到项目后可以极大的提高项目编译速度。相比较现在的instant-run,buck,layoutcast等方案快数倍。
开源地址:
https://github.com/alibaba/freeline
相关原理介绍:
https://yq.aliyun.com/articles/59122?spm=5176.8091938.0.0.1Bw3mU
接下来我们就开始集成Freeline到项目中去,主要讲一下我在配置的过程中遇到的问题。
首先,Freeline是采用python编写的,所以我们需要安装python环境,根据网上的说法,最好使用python2.7版本(有人使用python3.5无法成功集成)。
在python环境安装成功后,我们就可以着手在项目中集成Freeline了。根据在github中给出的配置的过程,我们先做一下几件事。
Freeline 初始化环境:
根目录下的 build.gradle(工程级别的build.gradle文件)
buildscript { repositories { jcenter() } dependencies { classpath 'com.antfortune.freeline:gradle:0.7.2' } }
项目下面的 build.gradle(Module级别的build.gradle文件)
apply plugin: 'com.antfortune.freeline' android { ... freeline { hack true } } dependencies { compile 'com.antfortune.freeline:runtime:0.7.2' }
自定义的 Application
public class App extends Application { @Override public void onCreate() { super.onCreate(); FreelineCore.init(this); } }
执行完这些步骤以后,接下在命令行(或者AS的终端)中执行以下命令:
Windows: gradlew.bat initFreeline
Linux/Mac: ./gradlew initFreeline
在执行的过程中,gradle可能会下载一些东西,有时候因为网络的样子会下载很慢,比如这样子的:
这个时候可以从gradle的官网上直接下载,然后将下载好的zip文件放入这个目录下。
然后在首次执行initFreeline时,还会下载相应的依赖包,如果网络好的话3分钟左右就会下载好。
当出现这步时,耐心等待一会儿。这个时候已经开始了对Freeline的初始化。如果提示失败,可以尝试这个命令下载。
Windows: gradlew.bat initFreeline -Pmirror
Linux/Mac: ./gradlew initFreeline -Pmirror
初始化成功后:
就可以连接我们的收紧编译我们的工程了。
执行一条python命令就行:
python freeline.py
第一次编译是全量编译,所以时间上有点慢,但当我们更改文件进行第二次编译时几乎是秒级的。
这时第一次编译的时间是50秒。然后我修改了一个布局文件进行第二次编译。
1.4秒,是不是很快!就是一瞬间的事情。
在这里我们可以看到,Freeline只重新编译了我所修改的布局文件,所以才会这么快。
至此,Freeline已经成功的集成到了我们的项目中,如果觉得每次执行命令行比较繁琐,可以在AS中安装Freeline的插件。
File->Settings->plugins->搜索Freeline即可
安装后就可以在项目中直接点击相应的图标使用,其实也是执行python freeline.py这条命令。
- Android项目快速编译之Freeline-Android的配置集成
- Android项目快速编译之Freeline-Android的配置与集成
- Android项目快速编译之Freeline-Android的配置与集成
- Android项目快速编译之Freeline-Android的配置与集成
- Android项目快速编译之Freeline-Android的配置与集成
- Android项目快速编译之Freeline-Android的配置与集成
- Android 项目集成 Freeline
- Android studio集成FreeLine加速编译
- Android studio集成FreeLine加速编译
- Freeline的快速集成
- Freeline让Android Studio快速编译
- Android 编译神器Freeline
- FreeLine实现Android的秒级编译
- Android编译工具Freeline的使用
- Android 配置Freeline教程
- freeline集成到Android Studio
- Freeline秒速编译Android项目详细安卓配置流程
- 使用freeline对Android工程进行快速编译
- ubuntu12.04进行python cgi开发
- js 实现拖拽
- 龙珠燃向, 可以放下了
- 玲珑学院OJ 1014 - Absolute Defeat(智商暴力题)
- hdu-5894-hannnnah_j’s Biological Test(Lucas定理+乘法逆+组合数)
- Android项目快速编译之Freeline-Android的配置与集成
- Java_02
- extjs初学者教程
- Win10升级到 1607 找不到便笺的解决方法
- 一些面试问题总结
- 产品经理---- idea good idea
- 运营汇编2 两个文件如何去重
- Servlet~Listener详解
- NFA 有限自动机原理