假如咱们把时刻倒回去智能手机刚鼓起的那几年,回到iPhone新近几代的时分。不知道咱们是不是还记得这样一个画面?用苹果的朋友会对安卓用户说,安卓那么卡,我真实不知道怎样用。

那时分,苹果还频频地与肾这个器官联络在一同,安卓手机相对高端点的仍是HTC和三星,魅族和小米才锋芒毕露。而安卓必然会变卡顿和缓慢,好像是个知识问题。为了处理这个它,网上撒播着各种安卓刷机教程、一大堆整理内存的APP,以及许多《教你让安卓不卡的10个绝技》这样的文章。

白云苍狗,不过沿袭几年。

让咱们回味一下今日,身边还有因为安卓卡顿而坚持不必安卓的吗?即便偶然有人宣布这种声响,好像也立刻会被朋友回怼曩昔“你几年不必国产手机了”?反而知乎和B站上,撒播着的是“给美国人安利EMUI”这样的故事。

不经意间,咱们好像现已习气了国产手机的高端定位,也很少有人还觉得安卓用几个月就会卡到不能开机。

但这全部到底是怎样发作的,或许大多数时分咱们没空回头细心揣摩。事实上,从移动终端格局初现,我国手机群落就一刻也没有中止过对安卓的优化和改善。直至今日,咱们会发现我国用户享用的移动终端体会,简直现已变成了“另一个物种”。

而这条“造物之路”并欠好走。回忆这些年我国手机对安卓的一路“追打”,咱们或许会惊觉,本来这些年手机厂商、开发者和万千用户一同,完成了一件有点了不得的作业。

安卓的功也过也

原生安卓的卡顿问题,是前些年移动互联网刚鼓起时,硬件圈评论最多的论题。可是开端回忆故事前,仍是有必要再概括一下安卓从诞生榜首秒起就注定的是非功过。

2003年10月,Andy Rubin等人创建了安卓公司。从最开端,这个项目便是期望在Linux根底上打造一个有利于极客们随意开发的OS体系。

2005年,谷歌收买了刚刚建立22个月的安卓,并在尔后完成了这一项意图持续优化与多边测验。2007年,谷歌以Apache免费开源许可证的授权方法,发布了安卓源代码。2008年,在苹果正式改称IOS之后几个月,对外发布了安卓1.0版别。

移动终端终究只留下了iOS和安卓,有人以为这是因为两个体系恰恰走向了两个极点。与iOS全部都被框定,只能严厉依照苹果的规矩来做开发不同,安卓的最强优势便是它超强的灵活性与习气才能。

它能习气最低端的手机装备;把一切途径对外敞开,哪怕一个网页都能装置使用;简略的安卓开发,近乎能够速成。

客观来说正是这些特质,才使得智能手机鼓起之初,许多的手机厂商、使用开发者、互联网创业者,以及大多数不想卖肾换手机的用户,能够进入智能移动终端这个新国际。

可是成也敞开,病也敞开。安卓就像修建了一座满足宽广的城市,可是从规划之初就没计划在城市里安顿任何市政办理体系。车随意进,人随意住,废物随意堆,终究导致了安卓广为诟病的“必卡”问题。

归纳来看,从技能规矩上有三件事决议了安卓一向为人诟病的缓慢和卡顿:1无节制敞开的使用接口,导致安卓更或许加载废物软件;2每个使用的缓存文件都在安卓体系中进行堆积,形成体系会越用越卡顿;3安卓履行Java代码,选用的虚拟机转化机制,导致使用的运转速度缓慢。

这三个“原罪”式的问题,尽管在安卓的每次更新中得到了大幅度缓解,但在本质上并没有处理。

好在这不是安卓故事的结尾,而是我国软件作业者的起点。

敞开我国式交互

尽管安卓的卡顿问题历来都是“榜首黑点”,但我国开发者对安卓做的榜首件事并不是处理卡顿,而是改动交互。

客观来说,谷歌发布的原生安卓是有自己的交互了解和审美规划的,但是其的确愈加契合欧美用户一向的审美体会。另一个安卓的问题在于,我国用户是衔接不上许多谷歌服务的。手机厂商有必要给微信、淘宝、O2O这类“我国式移动服务”安排好进口。

所以从2010年开端,手机厂商连续踏上了深度定制安卓交互的路途。其间最有名的商业事例,是从MIUI发家的小米。MIUI首先取消了安卓的使用抽屉规划,将其改为相似iOS的桌面平铺规划。调配简练精巧的规划言语,奠定了我国用户共同的安卓习气和交互审美了解。

当然,我国手机改动安卓交互也不是只要MIUI一种形式,比方主打海外商场的一加,就采取了尽量贴合原生安卓规划的定制形式。尔后,深度定制的UI体系开端成为安卓阵营国产手机的标配,让国产手机从体系外观上就变成了独立的物种。

这或许是大部分用户都能直观感觉到的安卓变迁史。但在这之后,国产手机“爆改安卓”之路开端走向了关键问题——卡顿,终究是用户体会的死敌。

华为的深层举动

假如说,安卓手机在我国商场的兴起,与改造交互规划密不可分。那么华为的近几年的强势兴起和走向高端化,则一直伴随着另一条主线:对安卓进行体系级的深层改造。

这个举动敞开于2016年,伴随着Mate 9发布的EMUI 5.0中,有一个十分直接的才能,叫做“天然生成快终身快”。其时华为为此给出了一个闻名的许诺:安卓18个月不卡顿。

上文现已说过,安卓的卡顿首要来自各个使用会带来许多碎片化文件。因为安卓是直接架构在Linux根底上的,其文件体系在开端并没有考虑碎片文件的快速收回。而安卓又能够随意装置使用,这就导致每个使用的缓存、副本都会发作许多文件碎片,终究把文件体系堵死,形成卡顿,这也便是那几年咱们现已习气要常常整理文件碎片的原因。

这是其时安卓最大的槽点,也是华为在敞开高端化战略时,有必要在根底软件层面处理的首要问题。终究华为的处理方案,是把安卓原生的文件体系,由EXT格局换成F2FS格局,然后使手机能够极大程度上防止文件碎片。

F2FS格局最开端是三星一位技能人员创造并开源的,可是出于各种原因,三星并没有勇于直接替换安卓的文件体系。而这个比方器官移植的“安卓手术”,却在华为数百人团队的尽力下,在我国做成了。

终究成果,是从EMUI 5.0开端,用户就能够不再手动整理碎片文件。当年咱们习以为常的动作,现在现已成了可笑的往事。

吃了一次“深度改动安卓”甜头之后,华为又多次对安卓“下手”。比方上一年咱们十分了解的两个turbo。GPU turbo在安卓的图形中间件、内存办理、进程办理进步行了一系列优化;而Link turbo,改动了安卓的通讯模块、衔接模块。

至此,华为对安卓的优化应该说现已走到了适当深层的方位。而从P30系列发布以来,许多开发者开端重视一个新名词:方舟编译器。

它之所以引发了滔滔江水般的评论,原因在于编译器这东西,现已不仅是在修正安卓某一部分,而是直接作用于安卓的底层规矩。

从特性到规矩:方舟编译器触发了什么?

大部分顾客或许不知道的是,安卓会卡和安卓会慢,其实还不是一件事。

即便文件废物并没有堆满安卓的“库房”,咱们也仍然会觉得安卓翻开杂乱的APP或许一起加载许多文件时,反响功率显着不如iOS。

这个问题的原因,就在于上面所说的,安卓体系在履行Java指令的时分,需求进行虚拟机转化。所谓虚拟机,能够了解为程序员所用言语,与安卓了解的机器言语之间存在着一层翻译。翻译当然也没有什么欠好,可是假如在发动使用的一起进行翻译,那明显就会糟蹋许多时刻。这就比方两人聊地利,加一位翻译问题不大。但假如在足球比赛里,两名球员要经过场边的翻译进行传话,那就什么合作都甭想了。

已然虚拟机机制如此糟蹋时刻,为什么还要用它呢?答案在于安卓是使用Java言语开发的,而为了让开发更便利,Java在开端规划时就加入了一层虚拟机设置。不管在什么硬件进步行的编程,终究一致打到虚拟机去处理,这样就让开发者有了很好的适配灵活性。

可是这个设置,假如是在分秒必争的手机体会中,一遍翻译一遍履行的形式,就会变得反常担负。尤其是今日的安卓使用,实际上往往是Java和C言语混合开发,两种言语在履行层彼此转化,又会糟蹋许多的时刻。

这个看似两难的问题,处理思路其实十分“简略粗犷”。华为给出的答案是,能够直接在开发层,经过编译器把使用直接转成机器码。咱们爽性把虚拟机丢掉就完了。

事实上,谷歌也早就认识到了安卓这个层面的问题,在装置5.0之后,现已针对编译做了许多优化,但仍旧存在不少问题。而方舟编译器,则从根底规矩上处理了转码的担负,让安卓体系的流通度提升了24%,让EMUI 9.1在流通度层面一点点不逊于iOS。

这个改动听上去很轻松,有种“一招毙敌”的爽快感。但是底层编译器却是软件层面最杂乱的作业之一。为了能够真正在“安卓的魂灵处动刀”,华为从09年就开端预备,2013年就开发了自研编译器HCC。2014年,华为以“多顾茅屋”之势,请来了编译器范畴国际最闻名专家之一Fred Chow,担任华为编译器技能首席科学家。坊间撒播,全球能在底层改动安卓的人不到五个,而Fred Chow是其间之一。

就这样,华为2012实验室加上软件工程部的数百位研制人员的漫漫十年征途,终究换来了即将开源给全球开发者的方舟编译器。

故事到这儿,某种程度上来说我国的软件开发者们,现已不仅仅是安卓的使用者,而是它的造物者。

当然,故事并不计划就此结束。

今日是结尾吗?

华为顾客BG软件部总裁王成录博士以为,优化安卓仍旧没有结束。

而下一步,或许将是开发者能够越过中间层,直接将使用衔接于安卓底层库,完成极简的个性化开发。

在手机商场的“后半场”,越来越少看到“巧计制胜”的事例。而留下的,更多是技能深度和技能壁垒。

环绕安卓这条线,华为为代表的国产手机,接下来至少要做两件事:一是持续深化对安卓的优化改造,乃至经过许多技能奉献反向影响安卓的大版别更新,成为主航道的制定者;二是绕开安卓“有必要适配每一台手机”的特性,在其他赛道上做出差异化晋级。今日来看,这种晋级首要环绕三个方向发作:云端一体化体会、AI功用和泛IoT联接。

而关于华为这样的大玩家来说,更进一步的题中应有之义,是经过从OS层到根底软件,再到芯片架构,在每一层都具有满足的自主话语权,叠加在一同构成了华为未来环绕移动终端,能够打出新的战略或许性——在华为将方针定为全球顶端的时分,这是一条有必要构筑的路途。

今日咱们很或许会疏忽,安卓这个词其实跟AI有密不可分的联系。1886年,法国作家维里耶德利尔·亚当在其创造的小说《未来夏娃》里,给表面像人的机器人女孩起名叫做Android。

书中“安卓”阅历了一次次蜕变,终究接近于男主人公梦中情人的姿态。

明显,曩昔被冠以“穷人才用安卓”的操作体系,真实不像书中的安卓小姐。好在就像书中的情节相同,安卓在实际里也没有中止进化。它曩昔不如人意,未必将来也是如此。

就像从前我国在操作体系上是失语的,但未必将来也是如此。若干年曩昔,华为现已成为了国际上为安卓奉献最多的开发者之一,未来,谁又知道呢?

安卓女士自机器之梦中醒来,会源于造物者的亲吻。

声明:该文观念仅代表作者自己,搜狐号系信息发布渠道,搜狐仅供给信息存储空间服务。

推荐阅读