8 月 23 日凌晨,前一天晚上没有等来 Android Q 正式版的「谷粉」,这天早上却迎来了一个与「正式版发布」同样重磅的消息——今年迟迟没有开始的「命名」环节取消,Android 系统版本代号再无甜品。

在这个新旧交替的关头,我们不妨一起来回顾一下 Android 操作系统与甜品相伴这十年中那几个关键的版本。

蜂巢:早期探索与形态扩展

2009 年,Android 1.1 带着第一份甜品「法式小蛋糕(Petit Four)」正式亮相,从这个版本到后来的 Android 3.0 Honeycomb,是 Android 凭借自身的开放性不断积累基础功能的探索时期。

开放是 Android 面世时嘴里含着的那把「金钥匙」。2007 年 11 月,Google 联合 84 家包括运营商、软件开发商和硬件制造商在内的厂商成立手持设备开放联盟(OHA, Open Handset Alliance)并以免费开放 Android 源代码的方式与联盟成员共同开发、使用和完善 Android 操作系统。

OHA 时代的 Android logo

和彼时仍然通过付费授权的方式进行分发的 Windows Mobile 相比,免费开源的 Android 系统迅速吸引到了一大波厂商并催生出不少经典 Android 机型,比如 HTC Dream、Motorola Droid、Nexus One、Galaxy Nexus S……

HTC Dream

在这个过程中,Android 先后加入了从地图接入 API 接口(MapView API)到媒体框架(Media framework)再到桌面微件(Widgets)、移动热点、通知推送等一系列基础功能,这些功能都为 Android 日后走向成熟打下了坚实的基础。2010 年,Android 手机的全球出货量第一次超越了当时的市场霸主诺基亚1

但 Android 并没有止步于此,第二年年初,专门面向平板设备的 Android 3.0 Honeycomb 面世,摩托罗拉 Xoom 成为首款搭载这一操作系统的平板设备。虽然不久之后 Google 就放弃了专门为平板设备定制操作系统的计划,但使用屏幕上的虚拟按键代替实体按键(「三大金刚」)、带有应用缩略图的多任务交互界面、更适合触屏设备的文本选择方式……这些都成为了 Honeycomb 留给后续 Android 系统的「遗产」。

Android 3.0 Honeycomb

Google 在 Honeycomb 上推行的那套「全息(holographic)」UI 设计风格,后来也演化成为 Android 4.x 时代无处不在的 Holo Design,从某种意义上来说,Android 平台的界面设计从这里开始才有了统领全平台的规范指导。

我们能在后续的 Android 系统中看到很多 3.0 的遗留产物

在 Android 4.0 Ice Cream Sandwich(ICS)统一不同尺寸形态的设备之后,Google 对 Android 的优化重心终于开始从基础功能积累阶段转向核心体验优化:在 Android 4.1 Jelly Bean 中,Google 通过「黄油计划(Project Butter)」对 Android 图形绘制过程中的三级缓存、垂直同步和触控反馈进行优化,大幅改善了图形性能,让 60fps 的动画效果第一次在 Android 平台上成为了可能。

Android 4.4 KitKat 则进一步优化 Android 系统的整体性能,借助 Project Svelte,Google 优化了 Android 应用和操作系统运行的 RAM 需求,让当时的新系统在只有 512MB 运行内存的设备上也能流畅运行,这不仅再次刺激了低端 Android 市场,也为后来针对低端设备的 Android One 和 Android Go 打下了基础。

一个「改变 Android 命运」的选项

更重要的是,Android 4.4 KitKat 还在开发者选项中提供了一个用于切换 Android 运行时(runtime)环境的隐藏选项,允许用户从 Dalvik 手动切换至 ART(后面会解释二者区别),一场深刻的变革正在悄然酝酿……

棒棒糖:成熟的系统应该有模有样

Android 4.x 流畅度和性能表现上的改进可以说是厚积薄发,但这依然无法打破人们对原生 Android 最大的刻板印象——丑。要知道,MIUI、Flyme 这类各具特色的定制 ROM,早年在玩机界受欢迎的程度其实是远远高于原生 Android 的。2013 年 9 月,Apple 发布 iOS 7 更是直接抛弃了先前的拟物设计,掀起一阵「扁平化」潮流。

对于移动平台设计风向上的剧变,Android 也需要给出自己的回答,这个答案就是 2014 年随 Android 5.0 Lollipop 亮相的 Material Design。

Material Design 中界面元素及其对应的层级

高光和阴影是拟物设计中的常见要素,但在 Material Design 中,Google 并没有跟随当时的市场潮流将其完全舍弃,相反,它们成为了 Material Design 为「纸张(最初也叫量子纸,quantum paper)」赋予质感的基础:通过引入「Z 轴高度」这一概念,Material Design 将原本分散于平面上的界面控件变成一个个拥有不同高度的纸张,纸张堆叠产生不同的阴影,进而构建出一个立体、有层次感的交互界面。

更为直观的动效

配合拥有物理加速度、能够展示操作前后逻辑(让用户明白「从哪里来到哪里去」)的动画效果,Material Design 推出后无论是在开发者还是在用户群体中都颇受欢迎,开启本地播放器「看颜值」时代的 Phonograph、「让 iOS 用户都羡慕」的 Fabulous、让看天气变成一种享受的 天气时间线……这些都是属于 Material Design 的高光时刻,除了 Google 自家应用,我们甚至也能在一些第三方 iOS 应用 中看到这种设计语言的应用。

屡获大奖的 Fabulous

Material Design 对 Android 而言是具有「划时代」意义的,但它却不是帮助 Android 打赢这场「翻身仗」的唯一功臣——上面我们提到,在 Android 4.4 KitKat 中,Google 已经在开发者选项中悄然安插下了一个用于将系统运行时从 Dalvik 切换至 ART 的开发者选项,事实证明那仅仅只是一个开始。

我们不妨将 Dalvik 和 ART 想象成两位翻译,前者的做法是临场发挥,每次运行应用的同时都需要将应用代码转换为手机可以理解的机器代码,后者的做法则是事前准备,应用安装时就将所有代码进行转译和保存,免去运行应用时的「同传」过程。

「棒棒糖时代的 Android logo」

因此从 Android 5.0 Lollipop 开始,ART 正式取代 Dalvik 成为 Android 系统的默认运行时环境。从 Project Butter 到 Project Svelte 再到 ART 的启用,至此 Android 完成了针对「流畅度」的一系列底层改造,加上后续不断演进的 Material Design 设计规范,Android 也算是真正进入了稳定发展的成熟阶段。

奥利奥:直面「碎片化」

「棒棒糖」之后,Android 系统先后又经历了两个大版本更新——Android 6.0 的「棉花糖(Marshmallow)」和 Android 7.x 的「牛轧糖(Nougat)」。分屏、画中画、智能文本选择、显示大小调节、勿扰与通知优先级……这些细碎但实用的功能,都是这期间加入的。

这里涉及到一个关键事件:2016 年 10 月,Google 推出了自有硬件品牌下的第一款 Google Pixel 手机。与早年和 OEM 厂商合作的 Nexus 系列相比,Pixel 作为「Android 体验标杆」的意义更加明显,但在这个过程中 Google 也越发意识到以往 OEM 厂商在面对 Android 操作系统进行定制时往往会遇到的一大难题:碎片化。

第一代 Made by Google 硬件产品

因此在初代 Google Pixel 推出后的第一次大版本更新,也就是 Android 8.0「奥利奥」中,我们可以看到很多围绕碎片化问题做出的改进。

比如为了减少 OEM 在外观定制上的工作量,Android 8.0 开始支持自适应图标规范,适配这规范的应用图标可以根据 OEM 厂商的实际需要自动选择不同的图标形状样式。

自适应图标

再比如以往 Android 平台上的密码管理应用往往只能借助无障碍功能来进行自动填写,而无障碍功能恰好又是一个敏感的「灰色区域」,这里「奥利奥」引入了一套易用且通用的方案:系统级自动填充框架,只要 OEM 厂商不对其进行「阉割」,密码管理工具在 Android 平台上可以用更加简单且稳定的方式来实现登录信息的自动填写。

系统级自动填充框架

不过比起向 OEM 厂商和开发者提供更加通用的方案,如何解决「碎片化」为 Android 操作系统版本升级带来的问题也至关重要。在这里,Google 引入了 Project Treble

即便往简单了说,以往 Android 系统更新要从 Google 手里经由 OEM 厂商下放到用户手里,至少也需要 5 个步骤:新系统源码发布、芯片/硬件层面适配、OEM 适配、QA 测试、最终推送,每个环节都将耗费大量的时间。

传统的 Android 更新流程

Project Treble 则将这个流程进行简化,具体而言,它首先将 Android 软件操作系统(Android OS framework)和设备专属底层(vendor implementation)部分剥离,后者由原本 OEM 厂商进行适配,Google 将其接手后与芯片厂商合作,最后重新设计为不再面向特定 Android 系统的通用底层代码。

如此一来,OEM 厂商在适配新版本 Andorid 时只需要关心软件操作系统的部分,工作量和难度也大大降低。不知道你有没有注意到,就连三星这种以往大版本更新落后 AOSP 半年甚至一年的厂商,现在几乎也能在第一时间进行基于新版 Android 的定制系统测试了。

关联阅读:

一个新的开始

从融合了点按和手势操作的「药丸」手势 到完全依靠手势的 手势导航,一方面,Android 9 作为第一个版本号里不再带有小数点的版本,更像是一个过渡产品;另一方面,Android 10 作为彻底舍弃了甜品代号命名的第一个版本,在除了甜品代号以外的其他很多方面(比如 手势导航方案的确定)也表现得非常决绝。

版本号命名更加简明直观、品牌标识也更有亲和力,改头换面地同时,以往 Android 系统常被诟病的问题在 Android 10 这里正得到一一清算:Google 一边不遗余力推行着 Flutter 这样的跨平台技术,一边则继续用 Project Mainline 这样的方案进一步梳理 Android 生态的碎片化遗毒。

新的 Android 品牌标识

从最初的纸杯蛋糕、甜甜圈、姜饼到后来的棉花糖、牛轧糖、奥利奥,Android 启用甜品名称作为版本代号的传统已经延续了十年。最初奔着数码相机操作系统去的 Android2 ,在遍历塞班(Symbian)、Windows Mobile 和 Windows Phone 等「巨人」的相继衰亡后,已经成长为坐拥超过八成市场占有率的第一大移动操作系统3

此番取消甜品代号并启用更加直观易懂的数字版本号,为的正是撕下以往贴了多年的「极客」和「工程师」标签,Android 10 可以被看作是一个新的起点,在这个起点上,Android 将像自家 兄弟产品 那样以一种新的姿态冲击下一个「十亿用户」。

> 下载少数派 客户端、关注 少数派公众号 ,第一时间掌握 Android 新动态 ⏱

> 特惠、好用的硬件产品,尽在 少数派sspai官方店铺 🛒