安卓11正式发布!谈谈安卓11不为人知的剧变?
【PConline杂谈】近日,谷歌正式发布安卓11。对于这款最新一代的安卓系统来说,它带来的新功能和新特性自然是有价值的。但考虑到原生安卓功能在国内往往是魔改,对国内用户的影响有限。安卓11对国内生态影响最大,可能还是一些底层变化,很少被提及。
安卓11要来了
是的,安卓11的底部变化很大!剧烈的变化将对广大用户产生深远的影响。今天就来说说吧。
刷机不再变砖?Recovery分区成为历史!
如果你是安卓刷玩家,你一定知道恢复这个词。这是安卓系统中用来还原系统的模式。无论是厂商正式升级系统,还是播放器刷进第三方ROM,通常都需要恢复。在安卓系统中,也有一个专门的Recovery分区,但这将在安卓11中成为历史。
恢复,这是刷玩家熟悉的。
在传统的Recovery升级模式下,如果写入System分区的数据有误,机器可能无法启动,刷玩家应该对这种“换砖”很熟悉,甚至厂商OTA也会偶尔“换砖”。如何避免?事实上,近年来,新的安卓机器使用了A/B分区机制,很多安卓机器不再需要Recovery来指导升级。
在改变安卓系统的启动模式之前,需要使用A/B分区机制后,通过boot直接引导启动
在具有A/B分区机制的安卓机中,当系统需要升级时,会将新系统写入其中一个分区,写入成功后,会从此分区启动;如果写入失败或启动失败,则从原分区开始,相当于两个系统分区互相备份,大大降低了系统升级的失败率。
安卓11也有类似的机制。预装安卓11的机器取消了Recovery分区,在一定程度上改变了A/B分区机制。当安卓11需要升级系统时,会将新系统的数据与当前系统数据进行比较,并将差异写入另一个分区,而不是系统分区;然后,用新数据启动系统。如果系统启动成功,将差异数据写入系统分区。如果启动失败,丢弃差异数据,从原始系统分区的数据开始。
新机制安卓11不仅具备A/B分区的可靠性优势,而且不需要像A/B分区那样占用大量额外空间。无论如何,恢复分区已经被放弃。预装安卓11的机器没有出厂的Recovery分区,引导分区承担了之前Recovery分区的工作。恢复是刷机不可缺少的工具。刷牙的玩家该何去何从?恐怕我得另谋出路了。
安卓11是有史以来最容易升级的安卓?
众所周知,谷歌一直在努力解决系统碎片化的问题,并努力升级安卓的最新版本。为此,谷歌做了很多努力。比如在安卓8.0中,实现了Project Treble,将系统(安卓OS框架)和硬件实现分开。之后,厂商可以独立为设备推送新版安卓,无需重新适配驱动。
三重项目将谷歌的安卓框架与硬件供应商提供的驱动程序分开
Project Treble大大简化了安卓系统的升级过程,但这还不够。在Android 10中,谷歌推动Project Mainline对系统进行进一步细分和模块化。在安卓10中,有14个系统组件是Mainline,媒体解码器、权限控制器、网络组件等系统组件可以像普通应用一样通过App store进行更新。很多朋友发现今年安卓机的GPU驱动可以独立更新,这得益于此。
高通宣布GPU驱动程序可以多带带更新
在安卓11中,谷歌进一步细分了安卓组件,组件模块多达20个,安卓的系统维护将变得比以往更加灵活。不仅如此,谷歌还实现了向系统内核的重组,安卓的Linux内核升级将变得更加灵活。
在目前的安卓系统中,Linux内核升级一般需要经过三个步骤。首先,谷歌选择一个Linux LTS版本作为安卓内核,并放置补丁;安卓运行所需;随后,谷歌将这一内核提交给了高通等SoC供应商,供应商再次将其打造为适应SoC的内核;最后,三星等设备厂商将内核适配到不同的组件上,再次对内核进行Patch,让内核真正在安卓上运行。
传统的安卓Linux内核升级过程需要经过很多环节,非常麻烦
由于步骤繁琐,目前的安卓机一旦出厂,Linux内核就很少变动,甚至对于谷歌旗下的Pixel设备来说,内核还是老的Linux 4.14。
在安卓11中,情况发生了变化。谷歌已经模块化了系统内核,内核已经
分成了Generic Kernel Image(GKI)和其他GKI模块。如果想要升级Linux版本,Google可以直接面向安卓机推送GKI,手机直接升级GKI即可,再也不需要经历从SoC厂商到手机设备厂商的繁琐步骤。Android 11开始开发者_JAVA技巧,内核进行了模块化,一个GKI内核可以通用于市面上的大量安卓机
据了解,安卓11的这一特性,在内核版本高于Linux 5.4以上的设备上,是要求强制执行的。可以说,如果安卓11的设备出厂内核版本就是Linux 5.4以上,那它有可能会是史上最容易升级的安卓。
安卓存储目录文件夹乱象彻底解决?
相信不少人发现,安卓机用久了以后,存储目录下就会多出很多奇奇怪怪的文件夹,这些文件夹是由各种App生成的,这其实是一个历史遗留问题。
安卓存储目录各种杂乱的文件夹哪来的呢?
安卓机的内部存储目录一度非常小,例如经典的Milestone的ROM只有512M,需要用SD卡扩展存储空间,因此安卓App往往会将文件保存在外部存储目录下(也就是sdcard目录)。而安卓在4.3版本前并没有提供外部存储目录的规范,App习惯在sdcard目录中随意建立自己的文件夹,这个习惯一直保留到如今。
现在,尽管安卓建立了sdcard目录的存储规范,例如安卓系统规定App如果要在内部存储空间建立文件夹,需要建立到/data/data/目录下,在外部存储空间则需要建立在/sdcard/Android/data/目录下。然而这一规范并非是强制性的,很多App由于使用第三方SDK等各种各样的原因,视安卓的存储目录规范不见,依然在sdcard目录下自建文件夹,安卓存储目录的混乱由此而来。
在安卓11中,文件夹乱象终于有望得到彻底解决。安卓11将不再允许App在sdcard建目录和文件,APP只能够往特定目录的私人文件夹写入数据。目前某些APP已经开始为此做准备,例如新版QQ将存储目录从/sdcard/tencent/变更到了/sdcard/Android/data/com.tencent.mobileqq/Tencent/,就是为了适应安卓的存储新机制。
总结
除了上文所提到的,安卓11还有很多非常有意义的更新,例如更强大的隐私保护、改进的通知系统等等,这里就不一一列举了。总的来说,安卓11是一个从里到外都进行了重大改革的版本,它解决了安卓的很多历史问题,大家共同期待吧。
精彩评论