AndroidStudio 快速集成 秒级编译工具Freeline

来源:互联网 发布:nginx lua redis 灰度 编辑:程序博客网 时间:2024/05/17 22:27

前言

      前段时间,由于项目工程较大,项目编译比较慢,一同事告诉我集成Freeline就会快很多。我百度了一下才发现,Freeline由蚂蚁金服开发的号称Android平台上的毫秒级编译工具,于是粗略研究了一下Freeline,这篇文章为大家简单介绍快速集成Freeline。

什么是Freeline?

Freeline是蚂蚁金服旗下一站式理财平台蚂蚁聚宝团队在Android平台上的量身定做的一个基于动态替换的编译方案。它集成了 Google的Instant-Run 、LayoutCast以及Facebook的Buck的所有优点。它的编译速度比这些都快了许多。为我们节省了许多编译与安装的时间。总的来说就是一个字“”。

关于Freeline的原理可以阅读以下几个:

  • https://github.com/alibaba/freeline
  • Freeline - Android平台上的秒级编译方

Freeline快速集成

    在集成Freeline 之前我们必须搭建Python环境,因为项目每次用Freeline编译时,会执行python freeline.py。关于Python环境的搭建这里就不说了。

     Freeline的集成有两种方法,在线集成和离线集成,在线集成非常简单,只需要一下几个步骤:

1、首先我们需要安装AndroidStudio 的 Freeline插件。

依次点击Files/AndroidStudio -> Settings/Perferences -> Plugins -> Browns depositories ,搜索Freeline然后安装并重启,如下图所示:


安装完成后我们会在工具栏看到Freeline的图标,如下所示:


2、在项目级的build.gradle 文件中添加Freeline的依赖

3、在项目的主module的build.gradle中,应用Freeline插件的依赖


4、在AndroidStudio的Terminal用命令行下载freeline的python和2进制依赖

Windows:gradlew  initFreeline

MacOS: ./gradlew  initFreeline

下载Freeline 没翻墙的话有点慢,在命令后加上 -Pmirror    如我的是MacOS,我们初始化时输入命令./gradlew  initFreeline  -Pmirror 这样就会快很多。


执行完成后就集成好了Freeline ,如下所示,第一次编译一个项目只用了42s


 

Freeline离线集成

    Freeline离线集成就是将所需要的依赖以module的形式添加到本地项目中,如下所示我们在线添加依赖后,项目的依赖里会有runtime。

    我们离线集成就是将runtime以module的形式导入项目中,去掉我们在项目级build.gradle中添加的依赖,在setting.gradle中添加runtime,然后在主module中引用就行了。


1 0
原创粉丝点击