1. Android简介

Android是一种基于Linux内核的自由及开放源代码的操作系统。最初是由安迪·鲁宾(Andy Rubin)开发的一款相机操作系统。2005年8月被Google收购。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机、智能手表等。2011年第一季度,Android在全球的手机市场份额首次超过塞班系统,跃居全球第一。2017年3月,Android超过Windows成为全球第一大操作系统。2022年Android的活跃设备数量突破30亿。

Android版本升级比较快,现在几乎以每年一版的速度更新,截至2024年6月,API等级目前已更新到35,具体如表1-1所示。

表1-1  Android版本名称与发布时间

年份

名称

版本名

API等级

2024

Android 15

15.0

35

2023

Android 14

14.0

34

2022

Android 13(Tiramisu)

13.0

33

2021

Android 12L(Sv2)

12L

32

2021

Android 12(S)

12.0

31

2020

Android 11(R)

11.0

30

2019

Android 10(Q)

10.0

29

2018

Android Pie

9.0

28

2017

Android Oreo

8.0-8.1

26-27

2016

Android Nougat

7.0-7.1.2

24-25

2015

Android Marshmallow

6.0-6.0.1

23

2014

Android Lollipop

5.0-5.1.1

21-22

2013

Android KitKat

4.4-4.4.4

19-20

2012

Android Jelly Bean

4.1-4.3

16-18

2011

Android Ice Cream Sandwich

4.0.1-4.0.4

14-15

2011

Android Honeycomb

3.0-3.2

11-13

2010

Android Gingerbread

2.3-2.3.7

9-10

2010

Android Froyo

2.2

8

2009

Android Eclair

2.0-2.1

5-7

2008

Android Donut

1.6

4

2008

Android Cupcake

1.5

3

2008

-

1.1

2

2008

-

1.0

1

2023年2月9日,Google 发布了 Android 14 的首个开发者预览版(Developer Preview)。Android 14 重点关注大屏和跨设备体验的改进,特别是平板电脑和可折叠设备,增强对后台App的管控,提升待机续航,把文本缩放比例限制从130%提升到200%,引入非线性字体缩放曲线,引入“应用克隆”了,支持App双开等。此外,Android 14将阻止API等级为 22 或更早版本的旧App的安装。

2. Android体系结构

Android体系结构分为五层,从上到下依次为应用层(App)、框架层(API Framework)、系统库和运行时层(Native C/C++ Libraries & Android Runtime)、硬件抽象层(Hardware Abstraction Layer)、内核层(Linux Kernal)。

应用层分为系统应用和用户应用。系统应用包括拨号、短信、通信录等。用户应用就是用户下载的应用,本书介绍的就是用户应用的开发。

框架层包括Android应用开发需要的框架。框架层提供了应用层需要调用的接口,应用层使用这些接口实现特定的功能。框架层包括Activity Manager(活动管理器)、Window Manager(窗口管理器)、Content Providers(内容提供者)、View System(视图系统)、Notification Manager(通知管理器)、Package Manager(包管理器)等组件。

系统库和Android运行时层是框架层的支撑,是连接框架层与硬件抽象层的纽带。系统库包括一些C/C++库,如SurfaceManager、SQLite、SGL、FreeType等。Android运行时 (ART) 是 Android 上的应用和部分系统服务使用的托管式运行时。ART 及其前身 Dalvik 是专为 Android打造的。作为运行时的 ART 可执行 Dalvik 可执行文件并遵循 Dex 字节码规范。

硬件抽象层Android HAL(Hardware Abstract Layer)是对硬件设备的抽象和封装,为Android在不同硬件设备提供统一的访问接口。HAL处于Android framework和Linux kernel driver之间。HAL屏蔽了不同硬件设备的差异,为Android提供了统一的访问硬件设备的接口。HAL层帮助硬件厂商隐藏了设备相关模块的核心细节。

内核层基于上游 Linux 长期支持 (LTS) 内核。在 Google,LTS 内核会与 Android 专用补丁结合,形成所谓的“Android 通用内核 (ACK)”。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部