Android秒级编译工具Freeline

Freeline 是 Android 平台上的秒级编译方案,Instant Run 的替代品,由蚂蚁聚宝Android 团队开发,它可以充分利用缓存文件,在几秒钟内迅速地对代码的改动进行编译并部署到设备上,有效地减少了日常开发中的大量重新编译与安装的耗时,为Android开发者节省很多喝杯咖啡的时间 : )

最近看到不少有关Freeline的文章呀~今天终于决定要实践一下啦,过程当然要记录下来。

地址:https://github.com/alibaba/freeline

Github上面有中英文文档都有,介绍、原理说明以及使用步骤什么的都有写清楚,现在就按照文档来开始使用吧。

首先,配置build.gradle文件

 
截图取自此开源项目,我懒,^_^

我的project下的build.gradle,截个图看看,我还当初还有引用butterknife

 
 

我的app下的build.gradle


 
 

命令行执行以下命令来下载 freeline 的 python 和二进制依赖

  • Windows[CMD]: gradlew initFreeline
  • Linux/Mac: ./gradlew initFreeline

对于国内的用户来说,如果你的下载的时候速度很慢,你也可以加上参数,执行gradlew initFreeline -Pmirror,这样就会从国内镜像地址来下载。

也可以使用参数-PfreelineVersion={your-specific-version}来下载特定版本的 freeline 依赖。

如果你的工程结构较为复杂,在第一次使用 freeline 编译的时候报错了的话,你可以添加一些 freeline 提供的配置项,来适配你的工程。具体可以看 Freeline DSL References

我用的Windows,没办法,真买不起mac啊,还需努力提升自己,提高技术,努力赚钱才行呐,于是,我按了下cmd,按下gradlew initFreeline -Pmirror,得到这结果

 
 

咦,不对,突然又机制一把,找到AS中Terminal页面,继续输入gradlew initFreeline -Pmirror

 
 

然后一直打点点。应该就在下载了吧~


 
 

等待了二十分钟后,中途也一直在打印东西,点点加其他,最终出现这结果,下载还挺久哈!

Usage

Freeline 最快捷的使用方法就是直接安装 Android Studio 插件。

在 Android Studio 中,通过以下路径 Preferences → Plugins → Browse repositories,搜索“freeline”,并安装。

我没找到Preferences 可能是Setting的其他叫法吗~我点到File -> Settings -> Plugins ->Browse repositories,搜索下载安装

 
 

然后重启AS,出现了Run Freeline的按钮

 
 
 
截图取自此开源项目

于是,我点击了一下蓝色按钮,旁边出现


 
 

哈哈~我的Windows环境没有python,去下载一个

Python官网:https://www.python.org/

 
 
 
 

只是个环境,我选择了这个下载安装了,安装到F盘一个文件夹中,然后在系统的环境变量中的path加上python的安装路径。打开cmd,输入python。

 
 

应该可以哒!重启AS,再次点击蓝色按钮。

 
 

no why,不知道原因,在github的issues看到


 
 

好吧,重新去下载一个python2.7.x 吧~再尝试下。

 
 

好了,重启AS,点击蓝色按钮

 
 

 
 

打印了一堆东西,还有running time,编译是不是快了点啊,好像是吧,哈哈哈~总之尝鲜成功了。

后来发现Log中报Freeline没有初始化的错误,还需要在Applincation中的oncreate添加FreelineCore.init(this)

还有有时候项目中原来的简单封装ToastMaker跳不出来吐司,需要clean一下项目.

原文地址:https://www.cnblogs.com/fuyaozhishang/p/8471448.html