Android简介-历史、API等级与体系结构

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)”。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/35405.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kylin维度与度量:大数据分析的双剑合璧

Kylin维度与度量:大数据分析的双剑合璧 在大数据分析的浩瀚宇宙中,Apache Kylin作为一颗璀璨的星辰,以其卓越的预计算能力,为数据分析提供了前所未有的速度与效率。Kylin的维度和度量,构成了其多维数据分析的核心&…

【AI原理解析】—决策树原理

目录 一、定义与背景 二、基本组成 三、构建过程(以分类问题为例) 四、剪枝处理 五、算法与应用 一、定义与背景 决策树是一种基于树形结构的监督学习算法,主要用于分类和回归问题。它通过构建一棵树来模拟人类进行决策的过程&#xff0…

学历优先还是专业优先?高考志愿填报的抉择

学历优先还是专业优先?高考志愿填报的抉择 2024年高考帷幕落下,新一轮的思考与选择悄然来临。对于每一位高考考生,选择学校和专业是开启大学新生活的两个前置必选项。然而,有时候“鱼与熊掌不可兼得”,在分数受限的情…

博途(TIA Portal)自动化工程软件下载安装,TIA Portal V18软件安装包获取

博途(TIA Portal)不仅仅是一款自动化工程软件,它更是西门子自动化领域的璀璨明珠。 它能够将西门子的所有自动化产品无缝集成在一起,无论是PLC、人机界面,还是伺服系统、马达、变频器、网络组件等,博途都能…

开发中间件的底层原理通常涉及以下几个关键方面:

开发中间件的底层原理通常涉及以下几个关键方面: 1. **抽象化(Abstraction)**: - 中间件提供一层抽象,以便应用程序可以与底层系统或网络服务交互,而无需了解具体的实现细节。 2. **封装(E…

餐饮行业气体泄露风险预警:可燃气体报警器的校准检测策略

在餐饮行业中,使用天然气、液化石油气等可燃气体作为烹饪能源是普遍现象。 然而,气体泄露问题时常威胁着餐饮场所的安全,一旦发生泄露,可能导致火灾、爆炸等严重事故。 因此,为了确保餐饮场所的安全,安装…

Oracle 中 FETCH FIRST ... ROWS WITH TIES子句

在 Oracle 数据库中,FETCH FIRST … ROWS WITH TIES 是一个子句,它用于与 ORDER BY 子句结合,以获取与第一组(根据排序条件)具有相同排序值的所有行。这通常用于在结果集中包括那些与最前面的几行具有相同排序值的行。…

文生视频模型Sora刷屏的背后的数据支持

前言:近日,OpenAI的首个文生视频模型Sora横空出世,引发了一波Sora热潮。与其相关的概念股连续多日涨停,多家媒体持续跟踪报道,央视也针对Sora进行了报道,称这是第一个真正意义上的视频生成大模型。 01 …

计算机视觉实验二:基于支持向量机和随机森林的分类(Part two: 编程实现基于随机森林的泰坦尼克号人员生存与否分类)

目录 一、实验内容 二、实验目的 三、实验步骤 四、实验结果截图 五、实验完整代码 一、实验内容 编程实现基于随机森林的泰坦尼克号人员生存与否分类,基本功能包括:Titanic - Machine Learning from Disaster数据集的下载;数值型数据和文本型数据的筛查、舍弃、合并、…

Rust日常开发三方库精选

日常开发三方库精选 对计算机、编程、架构的理解决定一个程序员的上限,而工具则决定了他的下限,三尺森寒利剑在手,问世间谁敢一战。 本文就分门别类的精心挑选了一些非常适合日常开发使用的三方库,同时针对优缺点、社区活跃等进…

Ubuntu20.04离线安装dpkg

方法一:百度云盘下载离线安装包 链接:https://pan.baidu.com/s/1L7TaFwE35bMfOJbXmJcWwQ 提取码:mjsm --来自百度网盘超级会员V4的分享 方法二:找一台联网计算机,自行下载离线安装包。 1. 创建存放离线包文件夹 …

一次DC9靶机的渗透测试

1.信息收集 2.SQL注入获取用户 3.LFI读取etcpasswd 4.Hydra爆破SSH 5.添加etcpasswd用户提权 1.信息收集: 探测存活主机 nmap -sP 192.168.11.1/24 发现主机探测端口和服务: nmap -sV -p 1-65535 192.168.11.144 2.SQL注入获取用户: HT…

liunx 搭建 zookeeper

创建下载路径 #创建文件夹 mkdir -p /mydata/zookeeper #进入文件夹 cd /mydata/zookeeper下载zookeeper文件 #下载 wget https://mirrors.aliyun.com/apache/zookeeper/zookeeper-3.5.9/apache-zookeeper-3.5.9-bin.tar.gz #解压文件 tar -zxvf apache-zookeeper-3.5.9-bin.…

主机电子邮件访问:实现高效沟通与数据管理的综合指南

主机电子邮件访问:实现高效沟通与数据管理的综合指南 在当今数字化时代,电子邮件已成为企业和个人沟通的主要方式之一。主机电子邮件访问服务,作为一种集中管理和维护电子邮件系统的解决方案,不仅提高了通信效率,还增…

2024年6月29日(星期六)骑行十里箐

2024年6月29日 (星期六)骑行十里箐,早8:00到8:30,大观公园门口集合,9:00准时出发【因迟到者,骑行速度快者,可自行追赶偶遇。】 偶遇地点:大观公园门口集合 ,家住东,南,北…

如何在前端项目中制定代码注释规范

本文是前端代码规范系列文章,将涵盖前端领域各方面规范整理,其他完整文章可前往主页查阅~ 开始之前,介绍一下​最近很火的开源技术,低代码。 作为一种软件开发技术逐渐进入了人们的视角里,它利用自身独特的优势占领市…

四步轻松搞定!探索字节最新AnimateDiff-Lightning:高质量视频生成的秘密武器!

字节前脚刚发布了文生图大模型 SDXL-Lightning,后脚就又对文生视频领域下手了。 就在这几天又推出了文生视频模型:AnimateDiff-Lightning,它是一种快速的文本到视频生成模型。它生成视频的速度比原始 AnimateDiff 快十倍以上,只需…

ConcurrentModificationException

正在用Iterator迭代器循环操作的集合不能调用集合的删除方法,否则就会报异常:ConcurrentModificationException。 (调用迭代器的remove方法可以) package test;import java.io.*; import java.util.*;public class Demo {public static void main(Strin…

2024-06-26 问AI: 在大数据模型中,deep speed 是什么?

文心一言 在大数据模型中,DeepSpeed是一个由微软开发并维护的开源深度学习优化库。其主要目的是提高大规模模型训练的效率和可扩展性,帮助开发者更有效率地管理及优化大模型的训练、部署任务。以下是DeepSpeed的主要特点和功能: 提高效率和…

如何处理Java中的方法过长?

如何处理Java中的方法过长?: 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们将探讨在Java中如何有效地处理方法过长的问题。 介绍 在大型…