您的位置:首页 > 移动开发 > Android开发

开源Android容器化框架Atlas开发者指南

2019-06-18 14:22 1236 查看

随着手机淘宝业务的快速增长,协作研发团队的不断扩大,技术也面临着更多挑战:一方面代码量快速上升导致方法过多,限制打包的正常输出;另一个方面各业务线的开发和集成都需要到一个 apk上,业务间相互耦合严重,集成开发工作效率低下,这个大背景下,急需要做一次从构建,集成,交付的技术改造, 于是Atlas作为手淘运行的容器诞生了,它灵活的解决了各个业务开发期间的相互独立解耦,而且提供了各个模块线上独立动态能力。

更多关于Atlas详细内容:开源Android容器化框架Atlas开发者指南

本课程主要讲解Atlas框架的使用方法。

Atlas是什么:

Atlas是一个Android客户端容器框架,主要提供了组件化、动态性、解耦化的支持。支持在编码期、Apk运行期以及后续运维修复期的各种问题。

  • 在工程期,实现工程独立开发,调试功能,工程模块的独立。
  • 在运行期间,实现完整的组件生命周期映射,类隔离等机制。
  • 在运维期间,提供快速增量的更新修复功能,快速升级。

Atlas是工程期和运行期共同起作用的框架,它尽量将一些工作放在工程期,这样保证运行期的简单、稳定。

Atlas的整体设计,分为五层:

第一层称之为Hack层,包括OS Hack toolkit & verifier,这里对系统能力做一些扩展,然后做一些安全校验。

第二层是Bundle Framework,就是的容器基础框架,提供Bundle管理、加载、生命周期、安全等一些最基本的能力。

第三层是运行期管理层,包括清单,会把所有的Bundle和它们的能力列在一个清单上,在调用时方便查找;另外是版本管理,会对所有Bundle的版本进行管理;再就是代理,这里就是和业界一些插件化框架机制类似的地方,会代理系统的运行环境,让Bundle运行在的容器框架上;然后还有调试和监控工具,是为了方便工程期开发调试。

第四层是业务层了,这里向业务方暴露了一些接口,如框架生命周期、配置文件、工具库等等。

最上面一层是应用接入层,就是的业务代码了。

所以Atlas作为一个框架提供了相对完整的能力,业务层的开发可以在框架生命周期的各个环节做一些自定义的动作,也可以自由的调用系统、框架,乃至其它组件释放的能力。

Atlas是阿里移动基础团队的核心中间件之一,Atlas特别适用于大规模团队的协同开发。通过提供组件化、动态性、解耦化的支持,Atlas能够实现每个业务在开发阶段独立编译、独立调试、独立运行,最后再以一个组件的形式集成到客户端中,每个业务之间并行开发互不影响。此外,Atlas还具备客户端动态发版和快速修复的能力。

课程目标:

  •  掌握Atlas开源框架的使用

适合人群:

  • Android开发者

阿里云开发者社区全面升级,一站式体验,用得更爽:(阿里云开发者社区首页

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: