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

Atlas是古希腊神话中的天神,是波士顿动力公司的机器人,借助搜索引擎,得以发现这个名词背后许许多多的含义。在手机淘宝,Atlas是一个扎根于Android客户端的一个组件化容器框架,相比神话中用手和头支撑起苍天的泰坦神族,Atlas在手淘默默无闻地承载着手淘上丰富业务的运行,伴随着数不清的功能在...数据库

Android方向的大牛们都已经深刻了解了插件化所带来的巨大的便利,一直也没时间去搞一套详细的记忆,在这里,仅以源码分析的形式进行插件化框架的巩固,文集中会具体分析源码,框架结构,运行原理等方面,除了加深记忆,也让咱们一块儿进步。安全

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

Atlas是什么?负载均衡

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

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

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

Atlas的总体设计,分为五层:工具

第一层称之为Hack层,包括OS Hack toolkit & verifier,这里对系统能力作一些扩展,而后作一些安全校验。源码分析

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

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

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

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

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

关于开源Android容器化框架Atlas的详细内容:

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

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

更多精品课程:

7天玩转云服务器

云数据库Redis版使用教程

玩转云存储对象存储OSS使用入门

阿里云CDN使用教程

负载均衡入门与产品使用指南

阿里云大学官网(阿里云大学 - 官方网站,云生态下的创新人才工场

相关文章
相关标签/搜索