阿里的Atlas组件化框架
Atlas简介 Atlas是一个Android客户端容器框架,主要提供了组件化、动态性、解耦化的支持,支持在编码期、Apk运行期以及后续运维修复期的各种问题。Atlas目前支持的主要功能有: 在工程期,实现工程独立开发,调试功能,工程模块的独立; 在运行期间,实现完整的组件生命周期映射,类隔离等机制; 在运维期间,提供快速增量的更新修复功能,快速升级。 Atlas是工程期和运行期共同起作用的框架,它尽量将一些工作放在工程期,这样保证运行期的简单、稳定。下面是Atlas组件化的一个框架原理图。 上图是手机淘宝的apk,第一层目录上与标准的apk是完全一样的。在App会有很多的so文件,每个so文件如果解开来看它的结构类似于完整的apk,但本身不能独立运行,它运行在整个容器里,每一个组件都是独立的Bundle。例如,手淘的模块层次划分如下图。从模块来划分,手淘APK可以分为两层,上层是经过拆分的业务Bundle,扫码、评价、详情,各个业务之间可以进行功能的调用,可以通过路由调度到其他业务方。下层是共享的底层中间件,向业务方开放各种能力,如网络库、图片库等,会在容器里进行统一地把控,这样做的...








