生态碎片化这件事,早在十年多前就已经在Android社区内被广泛讨论。而在这十年来,作为Android生态的掌舵人,谷歌对这一问题的态度,也从漠不关心、无能为力,转为了正视现实、积极进取。那么到了2023年,Android生态的碎片化问题得到解决了吗?非常遗憾的是,至今为止,Android生态可谓是“碎了一地,且很难破镜重圆”。


       日前,谷歌方面通过AndroidStudio公布了截止今年3月,Android各版本的具体占比。其中显示,当前保有量最大的是占比为23.5%的AndroidR(11),位居次席的则是占比18.5%的AndroidQ(10),而AndroidS(12)、AndroidP(9)和AndroidT(13)则分列三四五位,但2017年的AndroidO(8)和2016年的AndroidN(7)还分别占据着6.7%和3.3%的比例。
       显而易见,直都2023年,碎片化这一老生常谈的问题依然是摆在Android生态面前的一座大山。那么问题就来了,Android的碎片化为什么会成为一个问题,谷歌为什么非要解决它不可呢?
       随便隔壁苹果的iOS由于闭源生态的缘故,可以通过将老版本验证关闭来阻止用户回滚,可为何PC端的Windows就没有受到如此严重的碎片化问题困扰呢?


       事实上,Android之所以因为“碎片化”饱受诟病,是因为这一现状给开发者增加了不少开发上的成本和麻烦。而Windows的环境则更强调“窗口”这个概念,每个程序也都被视为是在独立的窗口中,因而应用的分辨率不必与屏幕分辨率保持一致。然而Android根植于移动端,“窗口”的概念被极大弱化,除了弹出对话框和通知外,应用基本都是全屏运行的,即Android设备的分辨率和应用的分辨率高度捆绑。
       因此在设计应用界面时,开发者和UI设计师需要根据不同的分辨率,来调整界面中各个控件的位置、间距、大小等。尽管Android针对“碎片化”问题为应用的适配提供了不少解决方案,但还是给开发者带来了不小的工作量。再加上Android系统版本的迭代实质上是不停叠加功能的一个过程,碎片化导致开发者为了照顾存量用户,往往很难在应用中使用新的技术。


       在解决了编译器、虚拟机等,更影响Android使用的问题后,此前在Android8时代,谷歌将弥合Android生态作为了头等大事,并带来了ProjectTreble机制。而ProjectTreble则将“系统层”和“驱动层”拆分,解除了驱动与系统版本的强绑定,并允许芯片厂商推出长期兼容未来新版本的驱动,并且确保它能在后续新的Android版本中无需修改也能正常使用。
       然而理想很丰满、现实很骨感,即便后来问世的Android手机确实都支持ProjectTreble,可由于整个Android生态的历史欠账问题,使得手机厂商对于老机型的改造兴趣缺缺。此前一加的工程师更是曾在论坛中直白的指出,厂商对跟进ProjectTreble没兴趣的难点,是Android7以及更早的老机型需要修改底层分区才能适配ProjectTreble机制。


       在Android7之前,谷歌没有强制要求手机厂商在打造自家ROM时进行分区,这就使得厂商的私有文件和Android系统文件混在了一起。而一台手机想要支持ProjectTreble就需要在底层增加一个分区,将system和v

友情提示

本站部分转载文章,皆来自互联网,仅供参考及分享,并不用于任何商业用途;版权归原作者所有,如涉及作品内容、版权和其他问题,请与本网联系,我们将在第一时间删除内容!

联系邮箱:1042463605@qq.com