论坛首页 移动开发技术论坛

IOS系统与Android系统的不同

浏览 2912 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2015-10-09  
iOS
不少移动开发者总是纠结是IOS开发好呢还是Android开发好,以至于在其选择工作的时候也很纠结,而买手机的人也是一样,经常犹豫到底是买苹果手机还是买安卓手机。那么本文就系统地比较一下IOS开发与Android开发不同,希望对纠结的同学有所帮助。

从使用角度来说,IOS系统的所有内容都是集成的,所以用户体验相对于Android来说会比较好一点;而安卓系统是开源的,而且版本不统一,所以会有各种各样不同的系统,因而界面相对来说会比IOS的好看些。

从软件方面来看,苹果的软件靠iTunes赚钱还需要相应的许可,所以相对而言质量要求比较高一些;安卓软件虽然也有精品的软件,但是质量要求可能相对来说不是很高,所以可以随便开发随便弄软件。而且由于安卓是开源的,软件和硬件不是一体的,所以可以刷不同的ROM,适合喜欢研究手机的人。

再看流行度,以前Android的市场很大,但是现在Android抗衡iOS已经变得不如从前了,比如在移动应用开发者的收入方面,平台的整合度,操作的流畅度等。尤其在企业级市场,几乎已被iOS全面占领,新兴的企业都表示更加青睐iOS,而不是所谓“开放”、基于Linux内核、拥有双核甚至四核的Android设备。

语言编写,Android是第一个内置支持Java的操作系统,Android应用程序使用Java语言编写,所以Android开发对Java的要求比较高;而iOS开发使用的是Objective-C语言编写而成的。

再说说流畅性问题,Android的使用者会发现,Android手机用一段时间后就会非常卡,非常不流畅,而且屏幕分辨率不高;而iPhone用户就完全没有这方面的抱怨,所以在这方面安卓确实没有苹果做的好。

下面看看两者的系统机制有什么不同:

1、渲染机制
由于iOS的UI渲染采用实时优先级,而Android的UI渲染遵循传统电脑模式的主线程普通优先级,所以Android没有iOS流畅,这也是流畅度不同的根本原因。

简单来说就是iOS对屏幕反应的优先级最高,用户只要触摸屏幕,系统就会最优先处理屏幕显示这个层级,马上给出动画效果,然后才处理媒体、服务、核心的架构;而安卓则是追求进程优先,触摸屏幕后的手机屏幕显示和动画效果放在比较后的优先级,所以一个高效的双核处理器是很重要的。

2、后台机制
iOS,采用的是伪后台,当用户HOME键退出应用时,iOS其实关闭了程序,只保留应用的图像入口,只会默认将应用的最后的运行数据记录在RAM中,所以收到消息时只是一个中专的作用,对内存影响就没那么大,因此更加流畅;而安卓手机的后台是真后台,像PC一样,将应用保留在RAM中,当使用HOME键退出应用时,程序实际上并没有完全退出,而是被系统挂在了后台,为何我们关掉了聊天软件依然能够收到消息通知,因为它常驻系统内存,接受消息时后台仍然在运作,所以内存使用很低。

3、iOS执行程序的效率比Android高
iOS的则为Objective-C,专一性强,效率高;而安卓系统的编程语言是Java,特点是通用性强,效率低。

4、厂商喜欢给iOS做优化
iOS的封闭性决定了App Store里面的App都是在iPhone等产品上执行,硬件利用效率非常高,而且分辨率大小,硬件的更新等等参数也比较稳定,优化工作也容易进行;而安卓手机的硬件配置经常变,开发者也不可能针对所有的机器型号进行开发,只能在比较主流的机器上进行测试并保证运行流畅,所以很多国产中低端安卓手机很难得到流畅的使用体验。

更多学习资料分享:http://peixun.yuantuan.com/
论坛首页 移动开发技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics