在当今的智能手机市场,无疑是被安卓和iOS双分天下。安卓手机成为了销量之冠,IOS手机则是利润之王。
大家在使用过程中,往往会觉得同样配置的手机,Android手机总是会比IOS手机慢。今天就带大家彻底搞懂背后的真正原因。

安卓VS苹果
一、开放VS自治
我始终认为,一切的不同,归根结底是源于各自最初设计理念的不同。
Android是由Google公司推出的,Google是一家互联网公司,以服务为产品,对于产品的设计,奉行开放自由的思想,因此,她邀请全世界众多伟大的企业,共同合作构建Android生态。

Android
IOS由苹果公司独立设计,苹果公司是一家实体科技企业,提供实体产品,奉行封闭自治的设计思想,硬件、系统、开发环境、应用市场等,iOS生态中的每一个环节都由苹果公司自己控制。

IOS
二、跨平台VS自有平台
在开放自由的思想下,Android内核使用的是开源的Linux,Google允许不同的手机厂商对Android系统进行移植。不同厂商的手机,无论是在操作系统本身,还是硬件上,或多或少都会有所差异。
为了屏蔽这种差异,让手机APP在不同的安卓手机上都能安装运行,Google公司选择了支持跨平台的Java作为手机软件开发语言。Java的软件是基于虚拟机运行机制,即Java软件运行在虚拟机上,再由虚拟机负责进一步转换,最终实现软件能在具体的操作系统平台上运行。
这样做的好处是,软件开发者只需要开发一套代码,在Java虚拟机的帮助下,让您的APP能在不同厂商的手机上运行,实现跨平台运行。对开发者来说是非常友好的,对用户来说同样也会非常方便。
但是,多了这个中间转换步骤,也就降低了Android系统的性能,另外,需要提供额外的资源给Java虚拟机本身使用,这些也就是比较慢的最根本原因。
iOS系统则不一样,封闭自治的生态下,不需要将性能用于额外的跨平台处理,速度自然就更流畅。
三、多任务VS伪多任务
Android系统是真正的多任务操作系统,它提供了服务类及广播类的机制,让手机APP在切换至后台之后,仍然能够运行后台服务,这些后台服务会继续消耗手机的资源。出于商业考虑,每一家企业都希望自己的APP能在用户的手机中长期的运行,当内存中驻留的后台服务越来越多,资源消耗殆尽时,自然就会拖慢操作系统。
此外,资源不够用时,Android本身的资源回收程序就会自动启动,运行资源回收管理的任务,这也会额外消耗大量资源,进一步加剧系统性能变慢。
IOS系统则是伪多任务,或者半多任务系统,除了个别被苹果特殊授权的应用外,其它APP进入后台将会被冻结(只能通过苹果的推送机制,保持与服务端的连接),不能继续运行,只有处在前台的APP在真正运行。资源得到有效利用,系统响应也就更快。
四、自由VS控制
Android的应用软件,相对来说会享有更宽松、自由的环境,在没有过多限制的情况下,难免会执行一些超出范围的动作,这就加大了APP运行出错的概率,软件出错、崩溃,对系统的性能也是有很大的伤害。这就好比一条高速公路,如果车辆行驶不进行规范、约束,那么就有更大的概率出现车祸,当车祸出现时,即使再先进的高速公路,通行效率也会变得非常低。
IOS则从各个方面对APP加强了管控,可以说,IOS软件执行的每一条指令,都在操作系统的可控范围之内,如果你不按规范,可能你的软件连出现在AppStore上的机会都没有。这就让每个APP在有序的环境下运行,因而不容易出错,不会影响性能。
综合以上所述,跨平台、多任务、相对不稳定出错率更高的运行环境,这三点原因,决定了Android系统的性能会比IOS系统慢。
但是,技术在发展,Google及全世界开发者的努力,Android系统近年来也越来越优化、越来越流畅,期待科技改变我们的生活。