本文环境
android studio 2.1.2
window
国外 vpn...............如果你不能连上国外的网站,请老老实实买一个 vpn
介绍...........摘自蚂蚁金服高级技术专家-博客-弦影
Freeline是蚂蚁金服旗下一站式理财平台蚂蚁聚宝团队在Android平台上的量身定做的一个基于动态替换的编译方案,稳定性方面:完善的基线对齐,进程级别异常隔离机制。性能方面:内部采用了类似Facebook的开源工具buck的多工程多任务并发思想, 并对代码及资源编译流程做了深入的性能优化。
OK ,废话不多说,上代码ing
第一步:安装phyton 2.7 环境
配置环境变量...................不会配置的自己去面壁思过
第二步:配置 gradle 文件
//1. 在项目级别的 gradle 文件里添加如下 classpath
dependencies {
...省略...
classpath 'com.antfortune.freeline:gradle:0.7.2'
}
//2. 在application 的 gradle 文件里添加
apply plugin: 'com.android.application'
apply plugin: 'com.antfortune.freeline'
android {
...省略...
freeline {
hack true
}
}
dependencies {
compile 'com.antfortune.freeline:runtime:0.6.0'
...省略...
}
接下来 sync project
//2. 在application 的 onCreate() 加入 FreelineCore.init(this);
public class APP extends Application {
@Override
public void onCreate() {
super.onCreate();
FreelineCore.init(this);
}
}
//3. AndroidManifest.xml 中指定 name
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="xxx.xxx.xxx">
<application android:name=".app.APP">
...省略...
</application>
</manifest>
第三步:编译
在项目的根目录下打开 cmd,输入 gradlew.bat initFreeline
如果是初次安装,你可能会看到 cmd 窗口一直在打印 . 符号,那是因为它在下载 gradle,你只需要耐心等候,如果出现 timeout ,那么你的 vpn 也太 low 了,建议换 vpn 或重试。
OK,我猜你已经下载完了,这时候如果 cmd 不动弹了,你可以重新打开 cmd 窗口,继续输入上一条 gradlew.bat initFreeline 命令,此时你会看到这样的 cmd 窗口,它还是在下载东西,
又要等,我已经受不了了,我去***
不过为了以后的秒级编译速度,就暂且等等吧
OK,我猜你已经等完了,你应该看到这样的 cmd 窗口
恭喜,大功快告成了
接下来输入 python freeline.py
你应该看到这样的 cmd 窗口
OK 大功告成!!!!!!!!
有时候应用不会自动启动,需要手动打开(测试过,实际上应该是部署上了新的代码)
freeline 3条命令
gradlew.bat initFreeline //初始化
python freeline.py //增量编译并部署至手机
python freeline.py -f //全量编译并部署至手机
前方施工.请注意.有坑
目前只支持 python 2.7
freeline 和 instant run 可能会出现不兼容[我就出现了],如果集成了 freeline 后用 instant run 编译后运行到手机上出现问题或报错,移除 freeline 的集成,即可。或者使用 freeline 命令编译部署就不会出现问题
最后的建议是:如果集成了 freeline 环境,就请使用 freeline 来编译。如果想 instant run ,最好去掉 freeline 的集成,别作哦..............