@
hjc4869 我没有理解你说的矛盾在哪里。
我想完整表述的观点是这样:
1. Android 本身是开放的,但并不是开放的就会形成有效的市场竞争。国外的先不说。国内市场实际上并不是有效的市场竞争,几个重要的 Android ROM 和手机制造商控制了 Android App 生态,App 开发者只要好好地拜码头而不是服务好用户,就能生存。于是 Android App 的质量相对 iOS 比较差,以至于出现了一些“不给权限就不可以(愿意)正常工作的 App ”。当然用户可以选择不使用这样的 App,但这是这样对用户的权利和对 App 开发者来说是双输的。
更重要的是,Android 据我的了解并没有很好地保护开发者和 App 用户。例如 Android 可以动态注入各种补丁干扰一个 App 的行为;对用户 Android App 的权限机制设计也并没有 iOS 来得用心,权限太多普通 App 使用者根本无从适应,也没有一个很好的事后检查权限的机制。
2. Apple iOS 对开发者本身是非完全开放的,但是 iOS 保护用户权利方面比较给力,虽然 App 要上 App Store 的这个过程必须经过审核,这并是非市场行为,但由于先发优势形成开发者数量众多,iOS 要适配机型相比 Android 更容易,开发者难度降低,所以 iOS app 开发形成了有效的竞争(对比 Android 某些 App 只能在某些 ROM 或者手机上运行良好)。并且用户可以很容易地找到 操作系统对 用户自身权利的保护机制(我就没见过哪个国产 Android ROM 能很方便找到 “隐私” 选项)。总的来说,在 iOS 上,Apple,App Developer,User 三方共赢的机会是很大的。虽然庄家 Apple 的赢面最大。
3. 理想的 OS Platform,App Developer,User 的生态,应该是 App Developer 服务 User,OS 同时服务 developer 和 User。User 可以通过 OS 控制 App 和 App Developer 的行为。这样才是一个有效的市场机制——不光要有自由竞争,还要有信息和信号控制竞争行为(所谓看不见的手)。
Android 要做到这一点,其实只差一小步,就是有效地隔离系统服务器和 App 之间的互相干扰,隔离用户数据和 App 数据。但是 linux kernel 其实一直都缺乏这样都基因,cgroup 等也是 docker 发展起来之后才被重视的概念,但目测在 Android 上引入是遥遥无期了。
Freebsd 很早就有 jail 这种系统级的隔离机制 ( iOS 越狱一词即是这个概念的衍生)。
WP 并非不优秀,非战之罪,后知后觉。