Android从2008年发布第一个版本(1.0)开始,就取得了连续的进步,主要版本包括:
初期版本:1.0(Apple Pie)、1.1(Banana Bread)、1.5(Cupcake)、1.6(Donut)、2.0/2.1(Eclair)、2.2(Froyo)。
中期版本:2.3(Gingerbread)、3.x(Honeycomb,仅平板)、4.0(Ice Cream Sandwich)、4.1-4.3(Jelly Bean)。
近期版本:4.4(KitKat)、5.x(Lollipop)、6.0(Marshmallow)、7.x(Nougat)、8.x(Oreo)、9.0(Pie)。
最新版本:10、11、12、13
Android版本的命名初期以甜点为主题,直到Android 10,谷歌决定简化版本名称,仅使用数字表示。
Android操作系统的四个主要层级,从用户直接接触的应用程序到操作系统底层的核心。下面是关于每个层次的详细介绍:
应用程序层(Application Layer)
定义:
这是Android架构的最上层,也是用户直接交互的界面。
应用程序层包括所有的应用,从系统应用(如拨号器、联系人和短信服务)到用户下载的应用(如社交媒体应用、游戏等)。
功能:应用程序通过调用应用程序框架层的API来实现其功能,用户可以安装、卸载和使用这些应用程序来执行特定的任务。
开发:开发者使用各种编程语言,如Java或Kotlin,以及Android SDK来创建这些应用程序。
应用程序框架层(Application Framework Layer)
定义:
应用程序框架层为应用程序提供构建块和管理各类系统服务。
开发者在创建应用程序时会用到这些服务。
组件:该层包括了一系列管理不同系统功能的管理器,例如Activity Manager(管理应用的生命周期)、Content Providers(管理应用间数据共享)、Resource Manager(管理不同资源,如字符串、颜色和布局文件)等。
功能:应用程序框架通过提供高级API简化了应用程序的开发过程,允许开发者以一种用户友好和重用性高的方式访问底层系统资源。
系统运行库层(System Runtime Library Layer)
定义:这一层集成了Android运行时环境和核心Java库,以及C/C++库。
Android运行时(ART):从Android版本5.0(Lollipop)开始,ART取代了原来的Dalvik虚拟机。ART优化了应用的运行效率和性能,支持Ahead-Of-Time(AOT)和Just-In-Time(JIT)编译。
C/C++库:此层还包括一些系统级的本地库,如WebKit、OpenGL、libc等,这些通常用于执行特定的设备硬件操作和提供核心的系统功能。
Linux内核层(Linux Kernel Layer)
定义:Linux内核是Android架构的基础,它提供了与硬件设备通信的接口,包括设备驱动程序。
功能:内核负责各种底层功能,如处理器管理、安全性、内存管理、设备驱动程序、网络堆栈等。
稳定性和安全性:Linux内核的稳定性和安全性是Android操作系统能够广泛应用在不同设备上的关键因素。
这四层共同构成了Android操作系统的完整架构,每层都在整个系统中发挥着关键作用,确保了Android设备的功能性和用户体验。开发者在开发应用时,主要关注的是最上面两层,而系统构建者和原始设备制造商(OEM)则需要在所有层面上进行工作,以确保硬件和软件的兼容性和性能。