区别"/>
Android 和 iOS 的区别
转载自:.html
- Android使用JAVA,上手容易很多,如果有很好的JAVA Lib加持,开发效率会高些
- iOS没有虚拟机,性能要好一些,当然这个差别会随着Google的改进越来越小
- iOS的开发框架基本上和MAC上通用,同样的知识,可以开发手机,也可以开发MAC应用,Android没有这样的优点
- iOS的设备集成度和驱动优化都是最好的。电源管理一块就可见一斑,而Android厂商就鱼龙混杂。可能排头的厂商的旗舰机器会好些,但是由于Android工期一般都比iOS设备短(请看HTC和三星出机器的速度),所以整体上和iOS比是有差距的。
- Android天然存在升级周期延迟的问题,而且厂商做升级是也是有成本的。卖手机的厂商无法顾及整个生态链,目前这个无解,除非Google做点什么。
- 由于有多家厂商自己做定制,Android还存在设备的分裂问题(fragmentation),作为过来人,我告诉你这个是很头痛的事情, 且不论调试时间和人力,光买一大堆设备的成本就不小。最关键的是它会伤美工/UE的心。
iOS是被Apple严格控制的系统。 在大部分情况下, 第三方应用是无法拿到所有API的。这意味系统级别的很多功能只有Apple能做(比如打电话,拦截短信)。此外一些涉及用户隐私的API还会导致系统弹出对话框询问用户。同样第三方runtime做应用开发也是基本不可行的(Flash当初也是被这个条款拒过)。反过来Android完全不一样,首先Android是开源的,在设计上Android就允许自由替换系统组件, Android也没有强制限制API的情况,(hidden API也可以call,没有人会找你麻烦)。系统级别的权限是下放到厂商手中,如果厂商愿意给,那第三方开发者就可以做任何事情。 普通应用的权限认证也是在安装的时候就一次性授权完成。之后不会骚扰用户。所以:
- Android平台可以做的事情远远比iOS多,你可以做电话管理,地址簿,短信管理,可以自己跑后台service。 替换掉系统的组件非常容易
- Android平台也可以跑其他系统的Runtime, 比如Flash, 有了NDK,你要自己接入一个虚拟机也是可能的。Google不会管你
- 任何人可以拿Android自己改个独立的系统出来,也许这样做的意义和前景有问题,但是同样,没有人限制你
- 厂商可以内置应用。经常会扔一些莫名其妙的软件预装在手机上, 笔者在厂商的时候深刻体会到乱选软件是很好玩的事情。而且我们不会让你删除掉的。
- Google的官方菜市场不做应用审核,开发者上传软件很随意,这是个自由市场。
- 国内还存在大量第三方软件菜市场。以及豌豆夹类似的PC端管理软件。
- 如果用户选择允许“未知来源”,那么通过web下载或者安装卡上的软件也是可以的。似乎国内用户都是允许的。所以:
- iOS上的精品软件多,竞争激烈但管理有序,开发者也容易挣钱。
- Android上虽然也有精品软件,但是垃圾软件更多, 甚至有恶意软件。因为无门槛,基本上软件都是免费,卖不起钱, 大部分都靠广告。
- Android还有一堆杀毒软件,这是典型的“没有困难,制造困难也要上”的精神。
- Android上还有一堆安慰剂软件,比如能帮你省电的或者是帮你杀后台进程的来提升性能的,笔者作为做过底层开发的人,笑而不语。
写了这么多分析, 结论呢? 事实上你是什么样的角色,决定了用谁更好。
- 如果你是普通用户,请关贴, 本文不是用来给普通用户选机的。
- 如果你是一个个人软件开发者,
iOS适合你, 市场规范,做应用省心。 - 如果你是一个软件和服务的创业公司, iOS也是适合你做demo的和第一个产品的,产品靠谱了,用户在用了,有人给钱了,再往Android走也是可行的。 除非你做的应用要涉及硬件或者需要非常高的系统权限,如果是那样你也只有选择Android。因为国内的厂商肯定要比苹果要容易谈下来。
- 如果你是一个要做硬件的,那么基本上你只有Android可以选。
- 如果你是一个有中国特色的公司,想搞点移动业务玩玩,还要瞒着用户做很多事情。
那么Android也是更好的, 就算你不作恶,控制权在自己手中也会方便运作一点。(原网址此处有广告,给去掉了)
更多推荐
Android 和 iOS 的区别
发布评论