美文网首页week.ioAndroidk开发合集Android知识
进一步提升AS编译速度的Freeline尝鲜

进一步提升AS编译速度的Freeline尝鲜

作者: 小呀么小黄鸡 | 来源:发表于2016-12-07 11:21 被阅读370次

    今早看了来自StormZhang的微信公众号的文章——Android 秒级编译 Freeline,就决定来尝尝鲜

    相关链接

    1. github地址
    2. 中文README
    3. 微信公众号的文章
    4. Python 2.7.12 下载
    5. freeline.zip

    正常流程:

    1. gradlew initFreeline -Pmirror
    1. 在Android Studio中,通过以下路径Preferences → Plugins → Browse repositories,搜索“freeline”,并安装。
    2. 直接点击Run Freeline的按钮

    Sample Usage

    cd freeline/sample
    ./gradlew initFreeline
    python freeline.py```

    可惜我每次接触新东西都要费一番周折

    我的安装过程

    首先需要安装Python,此处务必使用Python2.+版本,文章中没有指明我就顺理成章地踩到了这个坑
    另外Python安装过程可以设置自动添加到Path,真是贴心。

    再到AS项目中

    配置project-level的build.gradle,加入freeline-gradle的依赖:

    buildscript {
        repositories {
            jcenter()
        }
        dependencies {
            classpath 'com.antfortune.freeline:gradle:0.8.3'
        }
    }
    

    然后,在你的主module的build.gradle中,应用freeline插件的依赖:

    apply plugin: 'com.antfortune.freeline'
    android { ...}
    

    一切都感觉很自然直到在Terminal中运行了gradlew initFreeline
    遇到了issues/25
    公司网络问题导致freeline.zip无法成功下载,只好告别gradlew initFreeline命令

    解决方法

    借助以下两个issue
    issues/345
    issues/348
    手动下载了freeline.zip,将freeline、freeline_core、freeline.py解压到项目根目录下,当然也别忘了设置JAVA_HOME
    依次进行以下操作

    1. clean project
    2. gradlew checkBeforeCleanBuild
    3. freeline.py -f

    另外还有些注意事项是我有确切体会的:

    1. 第一次增量资源编译的时候有点慢,之后的编译就快了,这很正常;
    1. 不支持多设备同时连接,也就是说不管是模拟器还是真机,只允许同时一台设备连接,否则会失败;
    2. 不支持删除带 id 的资源,否则可能导致 aapt 编译出错;
    3. 如果你的项目又想用 Freeline,又想使用 Gradle,记得执行 Gradle 脚本之前先执行 ./gradlew clean,否则会编译失败;
    4. 不要忘记把产生的文件加入到.gitignore中去,环境还是每个人自行配置来得好,保持工程的纯净也是很重要的;
    5. 最后一点也是最重要一点,通过Freeline应用更改不一定会自动启动被更新的应用[二哈]。

    相关文章

      网友评论

      • 王元_Trump:为什么我用了freeline了 我的项目运行不走我自己的application类了 所以运行就是空指针直接闪退 吓得我立马删了插件 不知道你们有没有遇到过这个问题
        小呀么小黄鸡:@王元_Trump 是按照步骤来的吗 在freeline前clean project 比较保险,我的application放在别的module里面 运行也是正常的 也有可能是需要Multidex

      本文标题:进一步提升AS编译速度的Freeline尝鲜

      本文链接:https://www.haomeiwen.com/subject/zhedmttx.html