为什么Android系统要比ios卡

(1)内存机制

由于安卓系统继承了Linux的内存管理机制,所以导致许多程序被缓存在内存中,仅仅预留一小部分,也就是内存预留阀值,如果系统打开的程序占用的内存大于预留的空间,会触发系统的进程调度策略,系统将自动释放之前所缓存的一部分空间,这是一个十分消耗系统资源的操作,如果一个程序频繁向系统申请内存,这时系统会选择性关闭部分程序,当然,频繁的申请内存就会拖慢系统,所以安卓系统的内存机制是卡顿的根源,无法改变。

(2)系统运行机制

安卓所运行的程序多数是采用Java语言编写的,运行程序时需要构建出一个可以运行Java的虚拟机环境,这就是伟大的Dalvik虚拟机。当用户打开一个安卓程序时就一同创建了一个Dalvik虚拟机,打开多个程序就开启了多个Dalvik虚拟机,况且开启程序的时候还要进行编译这个操作,所以出现了卡顿,尤其是程序开多了之后。

尽管从Android 4.4开始谷歌方面加入了ART虚拟机,但是目前还没有得到所有应用的支持,所以效果不是很明显。

(3)编程混乱

由于系统的开源性,以及支持C语言、Python语言、Java语言等为开发者提供了更多的便利,但是由于安卓程序开发不能像苹果IOS一样采用统一的编程语言,以至于安卓所运行的程序不能实现针对不同的硬件进行专一优化,同时每个程序员的编写风格不一致,导致程序内编码不统一,尤其是有的冗余代码很多,导致系统卡顿。

安卓的开源不像苹果APP一样,开发者可以通过提供优质的程序获取利润,安卓大多数的做法是植入广告,所以在程序开发过程中,过多的冗余代码、广告代码和适配代码的加入也会拖累系统。不同于苹果的是,安卓手机从入门级到旗舰机型全都使用同一个程序,所以开发者必须保证每一台设备的运行,以至于安卓的安装包普遍照比iOS的要大很多。

最常见的就是安卓手机如果安装一个大型游戏,需要额外下载一个“数据包”,这个数据包是针对某一个平台的设备进行CPU、GPU等硬件的唯一优化,所以安卓需要下载额外的数据包,反之苹果却不需要。

到这里,大家应该会明白系统的整体机制和开源性致使安卓照比iOS卡顿是主要的原因,当然安卓也在不断的进步,虽然现在的手机处理器采用4核甚至8核,更大的内存3GB、4GB,也许这样能够带来些许的流畅度,但是同时也加快了系统的耗电量,所以根本的问题得不到优化,卡顿的问题就得不到根本的解决
展开阅读全文

没有更多推荐了,返回首页