Android 进化史 1.0 到 12 ,还记得第一次使用是哪个版本?

Android 进化史 1.0 到 12 ,还记得第一次使用是哪个版本?

  • 如果评论区没有及时回复,欢迎来公众号:ByteCode 咨询
  • 公众号:ByteCode。致力于分享最新技术原创文章,涉及 Kotlin、Jetpack、算法、译文、系统源码相关的文章

这篇文章概述了从 Android 首次面世到如今的发展历程(1.0 到 12 的进化史),Android 在视觉上、概念上和功能上都经历了一次又一次的转变。还记得你是从那一年开始接触 Android 的吗? 还记得你的第一款 Android 手机系统是那个版本吗?

在文末将会用一张表格总结一下 Android 系统版本、API 级别、VERSION_CODE 、时间线之间的对应关系。可以直接跳到文末查看。

早期的版本 Android 1.0 和 1.1

Android 初版 1.0 于 2008 年正式亮相,当时的东西都很简单,软件部分包含了一套早期的谷歌应用程序,如 Gmail、Maps、Calendar 和 YouTube,这些 App 都集成到操作系统中。

Android 1.5: Cupcake

2009 年 4 月发布 Android 1.5 Cupcake,Android 传统的甜品命名方式也随之诞生。Cupcake 对 Android 的界面进行了大量改进,最重要的改进就是屏幕键盘,这是手机摆脱曾经无处不在的实体键盘模式所必需的。

其次 Cupcake 还增加了 widget 的功能,这很快就成为了 Android 最具特色的功能之一。

Android 1.6: Donut

2009 年 9 月 Android 1.6 Donut 面世,Donut 的出现,填补了 Android 中很多不足之处,其中包括操作系统可以在各种不同屏幕尺寸和分辨率上运行,同时还增加了 Verizon 等 CDMA 网络的支持,这在 Android 即将到来的爆炸式增长中发挥关键作用。

Android 2.0 to 2.1: Eclair

在 Donut 发布不久之后,紧接着在 2009 年 10 月发布了 Eclair,该版本添加了语音导航、实时交通信息和 动态壁纸以及语音文本等等功能。

Android 2.2: Froyo

2010 年 5 月推出了 Android 2.2 Froyo,主要围绕着底层的性能改进。另外 Froyo 添加了一些重要的前置功能,包括添加主屏幕的底部导航、语音导航,点击一些图标、或者语音去完成一些基本功能。

Android 2.3: Gingerbread

2010 年 12 月发布 Android 2.3 Gingerbread,绿色一直是 Android 机器人吉祥物的颜色, 随着 Gingerbread 的出现,绿色成为操作系统外观不可或缺的一部分。黑色和绿色渗透了整个 UI, Android 开始缓慢走向独特的设计之路。

Android 3.0 和 3.2: Honeycomb

2011 年 2 月 Honeycomb 问世,Android 3.0 是随着 Motorola Xoom 的发布而发布的,仅面向平板。

在新上任的设计总监 Matias Duarte 的指导下,在 Honeycomb 上 Android 推出了一个全新的 UI。将平台的标志绿色换成了蓝色,并充分利用平板电脑的屏幕空间。

虽然平板电脑专用界面的概念并没有持续太久,但是 Honeycomb 的许多想法为如今的 Android 奠定了基础。在 Honeycomb 上首次使用了屏幕按钮当做导航,它标志着永久溢出菜单按钮的结束,它在最近的应用列表中引入了类似卡片的用户界面的概念。

Android 4.0: Ice Cream Sandwich

2011 年 10 月 发布了 Android 4.0 Ice Cream Sandwich(ICS),这次发布完善了 Honeycomb 引入的视觉概念,并将平板电脑和手机统一为单一的 UI。

ICS 保留了蓝色作为整个系统的亮点。它还保留了屏幕按钮和用于应用切换的卡片外观等核心系统元素。

在 Android 4.0 上滑动成为了操作系统中不可或缺的一部分,在当时颇具革命性的功能,可以滑动通知和最近的应用程序等内容。

Android 4.1 和 4.3: Jelly Bean

2012 年 7 月发布了 Jelly Bean,这次的发布为操作系统添加了大量的平衡和润色,大大提高了 Android 系统对普通用户的吸引力。

Jelly Bea 为我们提供了可扩展的交互式通知、一个扩展的语音搜索系统,以及一个更好的显示搜索结果的界面。多用户支持也开始发挥作用,尽管这只是在平板电脑上,以及 Android 快速设置面板。

Jelly Bean 推出了一个被大肆宣传的在锁屏上放置小工具,和多年来 Android 的许多功能一样,这个功能在几年后悄然消失了。

Android 4.4: KitKat

2013 年 10 月发布了 Android 4.4 KitKat,KitKat 提供了更明亮的背景,透明的状态栏和白色图标让操作系统具有更现代的外观。在这个版本中 Google 首次尝试为其服务提供一个完整的主屏幕。

Android 5.0 和 5.1: Lollipop

2014 年 11 月发布了 Android 5.0 Lollipop,从本质上重新定义了 Android。在 Lollipop 上推出了 Material Design,它带来了一个全新的外观,应用到了安卓系统、应用程序,覆盖了 Google 很多产品。

这种卡片设计的概念在 Android 中随处可见,现在它已经成为了核心的 UI 设计,覆盖到了所有内容的外观,从显示在屏幕上的一目了然的通知,到最近的应用列表。

在 Lollipop 上引入了大量新功能,实现真正的免提语音控制,多用户的支持,以及一个优先级模式更好地管理通知。不幸的是,大量新的功能,也带来了一堆麻烦的 Bug,其中许多问题直到第二年的 5.1 才被完全解决。

Android 6.0: Marshmallow

2015 年 10 月发布了 Android 6.0 Marshmallow,从这个版本开始,开启了谷歌每年发布一个主要 Android 版本的趋势。

在 Marshmallow 上有个最吸引人眼球的功能,那就是主屏幕上搜索功能,正如我当时所说的,它拥有许多未被充分开发的潜力。

Marshmallow 也引入了一些具有持久影响的功能,包括更细粒度的应用权限,支持指纹识别器和 USB-C。

Android 7.0 和 7.1: Nougat

2016 年 8 月发布了 Nougat,它提供了一个原生的分屏模式,另外在这个版本上也增加了一些较小但仍然重要的功能,比如可以在应用程序之间进行拍照。

Nougat 也发布了 Google Assistant,与此同时,在 Nougat 问世的两个月后,谷歌发布了首款完全自制的手机 Pixel。Google Assistant 将成为 Android 和其他大多数谷歌产品的重要组成部分。

Android 8.0 和 8.1: Oreo

2017 年 8 月发布了 Oreo,这个版本完善了很多细节,包括图片模式,通知休眠选项,以及如何很好地控制应用程序通知,调整 Android 和 Chrome OS,并改善使用 Android 应用程序在 chromebook 上的体验。

Android 9: Pie

2018 年 8 月发布了 Android 9 Pie,这个版本比较大的变化就是混合手势 / 按钮导航系统,还有一些值得注意的功能,比如一个新的数字健康控制面板,以及更智能的电力和屏幕亮度管理系统。更智能地处理 Wi-Fi 热点,对 Android的 省电模式是一个很大的改进,以及各种隐私和安全增强。

Android 10

2019 年 9 月发布了 Android 10,从这个版本开始不再以甜品命名,而是通过数字的方式来命名,这个版本带来了全新的 Android 手势导航。在底层,Android 10 引入了一个新的设置,允许更快速的推出小的补丁。更新了权限系统, 让用户可以更好的控制应用程序是如何访问位置数据。

Android 11

2020 年 2 月发布了 Android 11, 从本质上和表面上看都是一个相当大的安卓更新。这一版本最重要的变化是围绕隐私,这一更新建立在 Android 10 更新的权限系统的基础上,增加了用户授予应用特定权限的能力,这些权限与位置访问、摄像头访问和麦克风访问有关,但仅限于一次性使用。

Android 11 还限制了后台定位权限,使得应用程序更难请求。它还引入了一项新功能,那些几个月没有打开的应用程序将自动撤销其权限,除非你主动选择重新授权。

Android 11 改进了系统通知区域,强调并简化了与对话相关的提醒,它推出了一款新的流线型媒体播放器,可以在一个空间内控制所有音频和视频播放应用程序。

Android 12

2021 年 10 月左右正式发布了 Android 12 最终版本,并在发布了新的 Pixel 6 和 Pixel 6 Pro 手机后,很快推送到了到自己的 Pixel 设备上。

与前几个 Android 版本不同的是,Android 12 最大的进步主要体现在表面上。自 2014 年的 Android 5.0(Lollipop) 推出了 Material Design,在 Andriod 12 基于这个对界面进行了最大的重塑。

除了界面的变化之外,Android 12 重新设计了 Android 小部件,以及在性能、安全和隐私方面的一系列重要增强。限制了不同的应用程序是如何使用你的数据。

总结

最后用一张表格总结一下,Android 系统版本、API 级别、VERSION_CODE 、时间线之间的对应关系。

PS:

名称 版本号 发版日期 API 级别 VERSION_CODE
Android 1.0 1.0 2008年9月 1 BASE
Android 1.1 1.1 2009年2月 2 BASE_1_1
Android Cupcake(纸杯蛋糕) 1.5 2009年4月 3 CUPCAKE
Android Donut(甜甜圈) 1.6 2009年9月 4 DONUT
Android Eclair(闪电泡芙) 2.0 – 2.1 2009年10月 5 – 7 ECLAIR_MR1(2.1.x)
ECLAIR_0_1(2.0.1)
ECLAIR(2.0)
Android Froyo(优格冰淇淋) 2.2 – 2.2.3 2010年5月 8 FROYO
Android Gingerbread(姜饼) 2.3 – 2.3.7 2010年12月 9 - 10 GINGERBREAD_MR1( 2.3.3 - 2.3.4)
GINGERBREAD(2.3、2.3.1、2.3.2)
Android Honeycomb(蜂巢) 3.0 – 3.2.6 2011年2月 11 - 13 HONEYCOMB_MR2(3.2)
HONEYCOMB_MR1(3.1x)
HONEYCOMB(3.0.x)
Android Ice Cream Sandwich(冰淇淋三明治) 4.0 – 4.0.4 2011年10月 14 - 15 ICE_CREAM_SANDWICH_MR1(4.0.3、4.0.4)
ICE_CREAM_SANDWICH (4.0、4.0.1、4.0.2)
Android Jelly Bean(果冻豆) 4.1 – 4.3.1 2012年7月 16 – 18 JELLY_BEAN_MR2(4.3)
JELLY_BEAN_MR1(4.2 - 4.2.2)
JELLY_BEAN(4.1 - 4.1.1)
Android KitKat(奇巧巧克力) 4.4 – 4.4.4 2013年10月 19 - 20 KITKAT
Android Lollipop(棒棒糖) 5.0 – 5.1.1 2014年11月 21 - 22 LOLLIPOP_MR1(5.1)
LOLLIPOP(5.0)
Android Marshmallow(棉花糖) 6.0 – 6.0.1 2015年10月 23 M
Android Nougat(牛轧糖) 7.0 – 7.1.2 2016年8月 24 - 25 N_MR1(7.1 - 7.11) N(7.0)
Android Oreo(奥利奥) 8.0 – 8.1 2017年8月 26 – 27 O_MR1(8.1) O (8.0)
Android Pie(派) 9 2018年8月 28 P
Android 10 10 2019年9月 29 Q
Android 11 11 2020年2月 30 R
Android 12 12 2021年10月 31 S


如果有帮助 点个赞 就是对我最大的鼓励

代码不止,文章不停

欢迎关注公众号:ByteCode,持续分享最新的技术



最后推荐长期更新和维护的项目:

  • 个人博客,将所有文章进行分类,欢迎前去查看 https://hi-dhl.com

  • KtKit 小巧而实用,用 Kotlin 语言编写的工具库,欢迎前去查看 KtKit

  • 计划建立一个最全、最新的 AndroidX Jetpack 相关组件的实战项目 以及 相关组件原理分析文章,正在逐渐增加 Jetpack 新成员,仓库持续更新,欢迎前去查看 AndroidX-Jetpack-Practice

  • LeetCode / 剑指 offer / 国内外大厂面试题 / 多线程 题解,语言 Java 和 kotlin,包含多种解法、解题思路、时间复杂度、空间复杂度分析

近期必读热门文章

致力于分享一系列 Android 系统源码、逆向分析、算法、翻译、Jetpack 源码相关的文章,在技术的道路上一起前进

Android10 源码分析

正在写一系列的 Android 10 源码分析的文章,了解系统源码,不仅有助于分析问题,在面试过程中,对我们也是非常有帮助的,如果你同我一样喜欢研究 Android 源码,可以关注我 GitHub 上的 Android10-Source-Analysis

算法题库的归纳和总结

由于 LeetCode 的题库庞大,每个分类都能筛选出数百道题,由于每个人的精力有限,不可能刷完所有题目,因此我按照经典类型题目去分类、和题目的难易程度去排序。

  • 数据结构: 数组、栈、队列、字符串、链表、树……
  • 算法: 查找算法、搜索算法、位运算、排序、数学、……

每道题目都会用 Java 和 kotlin 去实现,并且每道题目都有解题思路,如果你同我一样喜欢算法、LeetCode,可以关注我 GitHub 上的 LeetCode 题解:Leetcode-Solutions-with-Java-And-Kotlin

精选国外的技术文章

目前正在整理和翻译一系列精选国外的技术文章,不仅仅是翻译,很多优秀的英文技术文章提供了很好思路和方法,每篇文章都会有译者思考部分,对原文的更加深入的解读,可以关注我 GitHub 上的 Technical-Article-Translation

评论