- 从系统的角度
- iOS和Android都是类Unix系统,iOS使用ObjectiveC开发,而Android是Google基于Linux开发的系统;iOS是封闭的系统,Android则开源。
- iOS是单任务系统,从iOS4开始宣称的多任务其实是伪多任务,应用不在前台时保存在内存,而不是后台运行,仅通过开放一些接口(如音乐播放)给特定程序,以及推送,伪造出多任务的效果;与此对应,Android是多任务系统,后台程序抢占系统资源。
- Push机制不同:iOS由于是单任务系统,不允许应用在后台活动,因此所有应用的消息推送都依托于一个系统进程,App对应的应用服务器给苹果服务器(APNs)发出通知,再中转传送给App所在的设备;而Android则是每个App本身与对应的应用服务器建立长连接。当然Android也有类似于iOS的第三方推送平台(包括Google官方的GCM),但目前应当不是主流。
- 效率不同:Android的应用在Dalvik虚拟机中运行,占内存大,运行速度略低;iOS运行效率高,对硬件要求低,更顺畅,也更加省电。
- root vs. 越狱:Android的root指获取超级用户权限,沿用Linux的权限管理;iOS的越狱指通过系统漏洞获取完整的系统权限,可以安装未经官方认证的应用和插件,但有时候会导致系统不稳定。
- 从厂商的角度
- iOS的设备和系统由苹果公司一家通吃;Android由于有多家厂商定制,存在令人崩溃的碎片化麻烦,任何厂商都无法顾及整个生态链,并且天然有升级延迟的问题。
- iOS被苹果严格控制,在大部分情况下,第三方应用无法拿到所有API,系统级别的很多功能只能由苹果做,一些涉及用户隐私的API会导致系统弹框询问;Android平台可以做的事情远远比iOS多,甚至可以替换系统组件,深度定制。
- 从发行的角度
- iOS上唯一的下载应用途径是Appstore,开发者上线应用要通过Apple审核,管理非常严格;Android的管理则非常松懈,除Google官方应用市场之外,还有很多第三方市场,如果授权允许“未知来源”,web上下载的应用也可以安装。
- iOS上的付费软件比较成熟,开发者更容易挣到钱;Android应用的收入在大多依靠广告。
- 从交互的角度
- 导航:Android包括3个虚拟按键:返回、home和最近任务,对于App还有menu键;而iOS只有1个home键,返回按钮一般在导航栏左上方。
- Android通过长按进入选择模式;iOS则有滑动删除。