前言
作为经历过HTC G1与摩托里程碑等早期安卓机时代的老玩家,我们对于“安卓手机系统更新”这个话题的热衷度也一直很高。
一方面这是因为我们认为,安卓手机的用户体验在很大程度上与系统是否为最新版本,以及是否能够及时得到关键的驱动与软件更新息息相关。
另一方面来说,由于系统更新、特别是给已经上市一年以上的老机型进行更新,注定是件“吃力不讨好”的事情。
也就是说,从手机厂商对系统更新的积极与否,以及更新内容是否充实这件事上,其实也能在一定程度上判断出他们的技术实力和对用户的诚意。
三星Galaxy S10和Note10前不久刚刚通过官方更新,得到了不少S20的新功能
正因如此,我们也经常会积极给大家报道最新的安卓版本与相关信息,同时也不时会“表扬”一些在这方面做得比较出色的厂商。事实上这些都是希望更多的消费者能够重视手机系统更新这件事情,进而推动整个行业在这项服务上更为积极,同时既能促进新技术的发展和普及,也可以给更多的消费者带来福利。
- 然而系统更新不及时,有时候错并不在于厂商
虽然我们一直在强调着安卓手机系统更新的种种好处,但如果大家留意一下自己身边的亲戚朋友就会发现,可能有时候“安卓手机系统更新慢”的问题并不是出在手机厂商身上。因为的确存在着厂商其实发布或是已经推送了新的系统版本,但用户自己却很长时间都没能安装更新的情况。
这是怎么回事呢?
其实最常见的理由有两条。一是用户可能根本就不懂得何谓“手机系统”、更不知道“系统更新”是何意思、有何好处,以及如何进行操作。这其实并不奇怪,对于那些手机是由儿女代买、代为设置好、平时至多只会打打电话、拍拍照、看看微信的年长用户来说,这可以说是一种相当普遍而自然的状况。
而这第二条理由,则多见于需要长时间保持手机接通的用户。比如每天可能就是在不断接打电话的生意人,或者需要盯着手机或电脑一连数个小时的炒股玩家、手游达人。对于他们来说,“系统更新”即意味着手机会有几分钟甚至十几分钟变得完全无法使用,这显然是无法接受的。
但是如此一来,就会使得新的状况出现了。一方面来说,得不到及时更新,就意味着手机的性能、兼容性、安全性都无法达到最佳状态,日常使用中反而会有更多麻烦。
另一方面来说,假设一部手机在厂商已经发布了系统更新文件,手机实际上也已经下载好,但是由于用户不会或者不愿进行操作,导致更新包就这样“沉寂”在了存储空间里。过了许久之后,用户才偶然点击了“更新”按钮,会发生什么呢?
答案很简单。更新可能会失败,手机可能会变砖,又或者可能导致一部分应用和数据出错。这或许源自不会操作的消费者在更新途中误关机所致,但也有可能是因为下载好的更新数据包,在闪存中因为没有及时安装,过长的存储周期里因为各种各样的因素(相邻区块的读写、温度变化、甚至原来的系统中了病毒),导致数据损坏。
而且后一种情况发生的概率可并不算太低,因为我们自己就曾多次在PC上遭遇过相同的情况,因此对于“系统更新下载好之后却没有及时安装”的后果早已是心有余悸了。
- 新技术或成Android 11标配,带来更新体验革命
那么问题就来了,如何才能避免上述的这些问题的出现呢?最彻底的办法当然是更多的科普智能手机系统更新重要性,进而期冀更多的用户都能真正用会,并用好手中的设备。但很显然,这只能是个美好的愿望,实现起来的难度可能不亚于让所有的电脑用户都学会自己装机。
相关的技术提交页面
除此之外要想解决问题,唯一的办法似乎也就只有从智能手机系统更新的方式上进行根本性的变革了。
好在,身为安卓生态“老大哥”的谷歌,还真就早早就进行了相关技术的开发。根据近日的曝光的信息显示,在如今正处于开发过程中的Android 11里,一项名为“虚拟A/B分区”的系统更新技术就已经被提交为“必选特性”。也就是说如果不出意外,未来的安卓手机在系统更新方式与用户体验上即将迎来一次巨大的变革。
什么是“虚拟A/B分区”?
简单来说,其本质上就是一个系统镜像备份机制。如果我们把手机当前正在使用的操作系统称之为“A系统”,那么“虚拟A/B分区”就意味着手机里会被额外划分出一块空间,用于存储一个A系统的备份“B系统”。这两个系统之间完全同步对称,并且用户所有在A系统中做出的改变,也都会被备份下来。
当手机收到了系统更新文件之后,便会在第一时间自动于备份空间内的“B系统”上安装更新,与此同时A系统依然可以正常使用。直到用户下一次关机或重启时,手机就会将已经更新好的B系统作为主系统启动,而此前的A系统就会自动变成备份系统,开始镜像备份B系统的内容。
如此一来,新技术带来的好处就很明显了。首先,它意味着系统安装更新的整个过程中,手机将不再需要刻意去进行重启、甚至不需要用户自己去操作,能够保证更新包下载完成就自动启动安装。此时用户正在进行的任何操作都不会被打断,既解决了小白用户不会操作系统更新的问题,又提高了更新本身的成功率,而且即便万一用户在不知情的情况下,在后台系统更新途中将手机关机,也不会造成系统损坏导致手机变砖,因为此时被破坏的B系统将不会启动,而是会在重启之后将完好的A系统的内容备份过来,实现“自我修复”,然后再一次尝试更新。
- 任何事物都有两面,这一次也不例外
不难看出,“虚拟A/B分区”技术几乎可以说是当前情况下,解决安卓系统一系列系统更新难题的一个最好方案。
它无需用户懂得维护手机,不会中断手机的使用体验,也大大提高了系统更新本身的稳定性和成功率。而且从另一个角度上来说,因为它极大简化了系统更新的操作步骤(实际上相当于消费者完全不需要任何操作了),所以这也意味着厂商也没法拿“更新太频繁会影响用户体验”为借口去偷懒了。
emmc闪存的半双工读写模式决定了它非常不适合这种后台下载和更新功能
但这是不是意味着新技术就完全没有缺点呢?
不是的。
实际上只要大家仔细阅读了前面我们讲到的原理部分,就能看出来这项“虚拟A/B分区”技术其实存在着一个挺大的问题。那就是因为它需要较为完整的备份当前系统,而且还是后台自动备份、自动安装更新的机制,因此这项技术不仅会额外多占据相当程度的存储空间,并且可能对手机闪存性能要求也非常高。换句话说,大容量的UFS2.1闪存或许将会是基本需求,那些低容量的入门级机型,或是还在用emmc闪存的机型,可能就无法享受到这项新技术了。
然而,这就意味着一个新情况出现了。如果大家还记得我们过去曾经讲到过,手机厂商出于利润、技术难度,以及用户口碑的考虑,通常都会积极给旗舰产品提供新系统和新功能的更新,但对低价位产品就往往就不会这么上心的这回事。那么Android 11上全新系统更新方式的来临,更意味着厂商从此有了充分的理由不给入门级产品更新系统。因为,他们的闪存容量或者速度或许从一开始就不太够,无法满足这一新功能的要求。
学习分享,共勉
Android高级架构师进阶之路
题外话,我在三星小米工作多年,深知技术改革和创新的方向,Android开发以其美观、快速、高效、开放等优势迅速俘获人心,但很多Android兴趣爱好者所需的进阶学习资料确实不太系统,完整。今天我把我搜集和整理的这份学习资料分享给有需要的人,若有关Android学习进阶可以与我在Android终极开发交流群一起讨论交流。 点击【加入】领取资料 的同时,还可以加入一个好的学习交流圈,何乐而不为呢?加入我们和我们一起吧!!
- Android进阶知识体系学习脑图
- Android进阶高级工程师学习全套手册
- 对标Android阿里P7,年薪50w+学习视频
- 大厂内部Android高频面试题,以及面试经历
网友评论