阿里技术架构演进,及App Bundle的诞生和新思路
署名2021-03-01

阿里技术架构演进

Atlas通过模拟Android OS,实现了上层对业务Bundle的独立安装和运行,阿里技术架构体系保证了业务迅速扩张场景下快速迭代的需求,阿里技术架构体系为业务提供了独立开发、独立部署的能力。Atlas在解决系统各种限制的同时,也对系统使用了较深层次的hack技术,但随着Android 系统的加速升级,以及Google在私有API上的限制,我们需要顺应趋势寻求一套更高效、零hook,并满足组件化能力以及高效运维的阿里技术架构体系。

淘系技术.png

App Bundle的诞生

当国内开发者正在焦头烂额地适配自己的组件化框架时包括阿里技术架构体系Google2018年推出了Android App BundleAAB)。简单来说,Android App BundleGoogle最新推出的APK动态打包、动态组件化的技术。与Instant App不同的是,AAB是借助Split APK来完成动态加载,使用AAB动态下发方式,可以大幅度减少应用体积。根据官方提供的例子,我们可以发现,App Bundle提供了一种在海外实现组件化能力的工程期以及运行期技术。

App Bundle的新思路

阿里技术架构体系可以从App Bundle中获得如下几项新思路。

阿里技术架构体系可以将功能作为独立的动态功能模块来进行设计、构建和测试,从而加快开发的速度。

阿里技术架构体系模块化应用将加快构建时间,单一集成式的应用构建速度则会较慢。

阿里技术架构体系可以在安装时根据设备支持的功能(例如,AR/VR 功能)、用户所在国家/地区或设备的SDK版本等属性提供可选功能。

阿里技术架构体系可以在需要时,而不是在初次安装时,按需安装功能,或者卸载不再需要的功能。可以将此功能视为交付新功能的最佳方式,而且可以从长期规划的角度来避免增加应用的体积。