本文PPT来自蚂蚁金服高级技术专家栾砚强于10月14日在2016年杭州云栖上发表的演讲,分享主题为《蚂蚁聚宝Android秒级编译介绍——Freeline》。
传统的Android应用构建在Buck、LayoutCast、Instant Run上均存在一些弊端。例如,入侵性强,接入成本高,需要安装全量包,以子任务为单位做增量资源全量替换,没有实现增量,资源不支持新增,没有利用缓存或者并发,
不支持4.x等等。今天,蚂蚁金服高级技术专家栾砚强向我们介绍蚂蚁聚宝Android秒级编译。
Freeline核心思想包括:多任务并发,多级缓存,增量范围最小化,基于长链接无安装式运行期动态替换,基线对齐触发机制,可调试和独立进程。这其中,无安装式动态替换包括:无安装式动态替换,基线包版本,sdk版本号,资源增量支持,Activity栈,独立进程长链接和基线对齐触发机制。
资源增量作为技术难点,增量包资源id怎么兼容基线包资源id?怎么样高效构建出仅仅包含变更集合的资源包?怎么样在手机端让上面构建的增量包生效等一些问题均在Freeline中得到了解决。手机端生效后,Freeline各方面性能均表现出色。Freeline实现了开源,期盼与技术极客共创。应用场景有线上热修复等。另外,Freeline的前瞻规划包括:注解的支持(databindingButterKnife等),多设备支持,稳定性提升以及AAPT2。