Android
操作系统简介
目标
系统简介
发展历程
发行版本
体系架构
系统结构
应用组件
平台优势
Android
一词的本义指
“
机器人
”
,同时也是
Google
于
2007
年
11
月
5
日
宣布的基于
Linux
平台的开 源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成。
Android
一词最早出现于法国作家利尔亚当(
Auguste Villiers de l'Isle-Adam
)在
1886
年发表的科 幻小说《未来夏娃》(L'ève future)中。他将外表像人的机器起名为
Android
。
Android
的
logo
是由
Ascender
公司设计的,诞生于
2010
年,其设计灵感源于男女厕所门上的图 形符号,于是布洛克绘制了一个简单的机器人,它的躯干就像锡罐的形状,头上还有两根线, Android小机器人便诞生了。
2003
年
10
月,
Andy Rubin
等人创建
Android
公司,并组建
Android
团队。
2005
年
8
月
17
日,
Google
低调
收购
了成立仅
22
个月的高科技企业
Android
及其团队。
安迪
鲁宾
成为
Google
公司工程部副总裁,继续负责
Android
项目。
2008
年,在
GoogleI/O
大会上,谷歌提出了
AndroidHAL
架构图,在同年
8
月
18
号,
Android 获得了美国联邦通信委员会(FCC
)的批准,在
2008
年
9
月,谷歌正式发布了
Android 1.0
系 统,这也是Android
系统最早的版本。
2009
年
9
月,谷歌发布
Android 1.6
的正式版,并且推出了搭载
Android 1.6
正式版的手机
HTC Hero
(
G3
)
,凭借着出色的外观设计以及全新的
Android 1.6
操作系统,
HTC Hero(
G3
)成为当时全球最受欢迎的手机。
Android 1.6
也有一个有趣的甜品名称,它被称 为Donut
(甜甜圈)
。
每年陆续更新版本
.....................................
2022
年,
Android 12
1.1
2008
年
9
月发布的
Android
第一版
1.5
Cupcake
(纸杯蛋糕)
:
2009
年
4
月
30
日发布
1.6
Donut
(甜甜圈)
:
2009
年
9
月
15
日发布
2.0
2009
年
10
月
26
日发布。
3.0
Honeycomb
(蜂巢)
:
2011
年
2
月
2
日发布。
4.0
Ice Cream Sandwich
(冰激凌三明治)
:
2011
年
10
月
19
日在香港发布。
5.0
Android 5.0Lollipop
(棒棒糖)
:美国太平洋时间
2014
年
10
月
15
日
6.0
Android 6.0Marshmallow
(棉花糖)
:
2015
年
9
月
30
日
7.0
Android 7.0Nougat
(牛轧糖)
:
2016
年
8
月
22
日
8.0
Android 8.0Oreo
(奥利奥)
:
2017
年
8
月
22
日
9.0
Android 9.0Pie
(派)
:
2018
年
5
月
9
日
10.0
Android 10.0 2019
年
,
今年的
Android Q
的正式名称是
Android 10
11
。。。。。。
Android
系统架构图,如下
Android
平台的基础是
Linux
内核。例如,
Android Runtime (ART)
依靠
Linux
内核来执行底层功 能,例如线程和低层内存管理。使用 Linux
内核可让
Android
利用主要安全功能,并且允许设备 制造商为著名的内核开发硬件驱动程序
Android
的
HAL
(硬件抽像层)
是能以封闭源码形式提供硬件驱动模块。
HAL
的目的是为了把
Android framework
与
Linux kernel
隔开
,让
Android
不至过度依赖
Linux kernel
,以达成
Kernel independent
的概念,也让
Android framework
的开发能在不考量驱动程序实现的前提
下进行发展
对于运行
Android 5.0
(
API
级别
21
)或更高版本的设备,每个应用都在其
自己的进程中运行
,并 且有其自己的 Android Runtime (ART)
实例。
ART
编写为通过执行
DEX
文件
在低内存设备上运行 多个虚拟机
,
DEX
文件是一种专为
Android
设计的字节码格式,经过优化,使用的内存很少。编 译工具链(例如 Jack
)
将
Java
源代码编译为
DEX
字节码
,使其可在
Android
平台上运行
许多核心 Android
系统组件和服务(例如
ART
和
HAL
)构建自原生代码,需要以
C
和
C++
编写 的原生库。Android
平台提供
Java
框架
API
以向应用显示其中部分原生库的功能。例如,您可以 通过 Android
框架的
Java OpenGL API
访问
OpenGL ES
,以支持在应用中
绘制和操作
2D
和
3D
图形
。如果开发的是需要
C
或
C++
代码的应用,可以使用
Android NDK
直接从原生代码访问某 些原生平台库
您可通过以
Java
语言编写的
API
使用
Android OS
的整个功能集。这些
API
形成创建
Android
应 用所需的构建块,它们可简化核心模块化系统组件和服务的重复使用包括以下组件和服务
:
1. 丰富、可扩展的视图系统,可用以构建应用的
UI
,包括列表、网格、文本框、按钮甚
至可嵌入的网络浏览器
2.
资源管理器,用于访问非代码资源,例如本地化的字符串、图形和布局文件
3.
通知管理器,可让所有应用在状态栏中显示自定义提醒
4. Activity
管理器,用于管理应用的生命周期,提供常见的导航返回栈
5.
内容提供程序,可让应用访问其他应用(例如
“
联系人
”
应用)中的数据或者共享其自己
的数据
开发者可以完全访问
Android
系统应用使用的框架
API
Android
随附一套用于电子邮件、短信、日历、互联网浏览和联系人等的
核心应用
。平台随附的应 用与用户可以选择安装的应用一样,没有特殊状态。因此第三方应用可成为用户的默认网络浏览 器、短信 Messenger
甚至默认键盘(有一些例外,例如系统的
“
设置
”
应用)。
系统应用可用作用
户的应用
,以及提供开发者可从其自己的应用访问的主要功能。例如,如果您的应用要发短信,您无需自己构建该功能,可以改为调用已安装的短信应用向您指定的接收者发送消息。
活动 (Activity)
Android
中,
Activity
是所有程序的根本,所有程序的流程都运行在
Activity
之中,
Activity
可
以算是开发者遇到的
最频繁
,也是
Android
当中最基本的模块之一。 一般一个Android
应用是由多个
Activity
组成的。这多个
Activity
之间
Android
的应用 可以进 行相互跳转。
服务 (Service )
Service
是
android
系统中的一种组件,它跟
Activity
的级别差不多,但是他不能自己运行,
只能
后台运行
,并且可以和其他组件进行交互。
Service
是
没有界面
的长生命周期的代码。
举个例子,打开一个音乐播放器的程序,这个时候若想上网了,那么,打开
Android
浏览
器,这个时候虽然已经进入了浏览器这个程序,但是,歌曲播放并没有停止,而是在后台继
续一首接着一首的播放。其实这个播放就是由播放音乐的
Service
进行控制。