您的位置:首页 > 移动开发 > Android开发

浅谈Android和IOS系统的差异

2015-02-27 09:37 232 查看

1.    渲染机制不同

IOS的UI渲染采用实时优先级,而Android的UI渲染遵循传统电脑模式的主线程普通优先级

IOS它的响应顺序依次为Touch--Media--Service--Core架构

 

Android系统的优先级响应层级则是Application--Framework--Library--Kernal架构

 

2.    IOS基于GPU加速

iOS系统对图形的各种特效处理基本上正好都是基于GPU硬件进行加速的,它可以不用完全借助CPU或者程序本身,而是通过GPU进行渲染以达到更流畅的操控表现

 

Android系统产品则并非如此,因为Android需要适应不同的手机硬件,需要满足各种差异配置,所以很多图形特效大多都要靠程序本身进行加速和渲染

(1.           虽然Android 4.0以及4.1等更高版本中进行了改进将硬件加速设为默认开启,但依旧无法做到所有特效全部都靠GPU进行加速)

(2.           在很多Android手机里面都自带有“是否开启GPU渲染”这个功能选项,不过开启之后的改善也是微乎其微。)

3.    后台机制不同

安卓手机的后台是真后台,将应用保留在RAM中,之所以能够收到推送,也因为它常驻内存。

 

IOS采用伪后台,当用户HOME键退出应用时,IOS其实关闭了程序,只保留应用的图像入口,只会默认将最后的运行数据记录在RAM中。之所以IOS也能收到推送,是因为应用程序开启推送后,系统会增加一些进程,这些进程会从苹果服务器接收信息,然后再通过服务器发给用户,苹果服务器在这里是起到了中转的作用。

 

4.    iPhone执行效率比安卓机高

安卓的编程语言是Java,特点是通用性强、效率低。而IOS的则为Objective-C,专一性强、效率高。

IOS系统本身优化得比较好(编译器gcc,而这个gcc编译出来的代码又被苹果专为iOS架构优化到了极致,运行过程中也不需要虚拟机在中间插手),而且程序直接执行,所以效率高。

 

安卓系统是通过Java虚拟机来执行(再加上内存自动回收的机制,所以造成了一些卡顿不流畅的现象出现),系统需要占用大量内存来换取执行速度,也就是要绕了个大圈才执行程序,所以效率低很多

 

5.    厂商喜欢给iPhone做优化

iPhone硬件等参数比较稳定,安卓硬件配置不稳定,所以厂商更喜欢给iPhone做优化
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息