IOS拒绝Adobe的六大理由
苹果与Adobe的关系由来已久。事实上,Adobe的创始人还在他们众所周知的小车库里时,我们就碰过面了。苹果是他们的第一个大客户。我们将他们的Postscript语言应用于当时最新的Laserwriter激光打印机。苹果曾经在Adobe投资,很多年来是Adobe的股东,拥有它20%的股权。两家公司曾经密切合作,开创了电脑桌面出版业,有过许多共同的美好时光。但是那段黄金时代一过,两家公司就分道扬镳了。苹果经历了濒死的体验,Adobe则凭借其Acrobat系列产品而打入企业市场。如今,两家公司只在创意产业为共同的顾客提供产品与服务——Adobe的Creative Suites产品的购买者中,约有一半是苹果电脑用户。但除此之外我们与Adobe几乎没有什么共同利益可言。
我想扼要说说我们关于Adobe Flash的几点看法,让用户和批评者们更好地理解我们为什么不允许iPhone、iPod和iPad采用Flash。Adobe曾经指出我们的决定是出于商业动机,他们说我们的目的是保护App Store,但事实上,这是出于科技角度的考量。Adobe宣称我们是一个封闭的系统,Flash是公开的,但是事实恰恰相反。让我来解释原因:
首先是“开放”
Adobe的Flash产品是100%拥有技术专利的。只有通过Adobe才能购买这些产品,同时只有Adobe有权对其进行改进、定价等。尽管Flash遍地都是,但这并不意味着其产品是开放的。因为Adobe完全拥有和控制着这些产品,所以无论从哪个角度看,Flash都是一个封闭系统。
苹果也拥有许多专利产品。尽管iPhone、iPod和iPad都是有专利的,但我们始终坚信,互联网的所有技术标准都应该是开放的。因此,苹果拒绝使用Flash,而是用HTML5、CSS和JavaScript等全部开放的标准。得益于这些开放标准,苹果的移动设备都具有低功耗与高性能的优势。HTML5是最新的网络标准,已被苹果、谷歌等许多公司采用,它允许开发者开发出更为高级的图形和动画,且不需要第三方浏览器插件如Flash就能转换。HTML5是完全开放的,由一个标准委员会对其进行联合管理,苹果也是其中一员。
苹果同时还为互联网制定开放标准。例如,苹果从一个小型的开源项目做起,开发出了WebKit。它作为一个完全开源的HTML5渲染引擎和Safari浏览器的核心组件,被安装在我们所有的产品之中。WebKit已经被广为采用。谷歌在Android系统的浏览器中使用它,Palm、诺基亚也用它,黑莓手机的制造商RIM也已经宣布将采用WebKit。除微软以外,几乎所有的智能手机上网浏览器都搭载了WebKit。通过将WebKit定位为开放技术,苹果实际上已经制定了移动上网浏览器的标准。
第二,关于全网络
Adobe反复宣称苹果的移动设备无法访问“整个网络”,因为网络上75%的视频是Flash格式的。但他们没有提及的一点是,几乎所有Flash格式的视频都有其他更先进的格式:H.264,而iPhone、iPod和iPad都支持这种格式。YouTube视频数大约占全网络的40%,而苹果所有的移动设备都可以播放其视频。iPad则提供有史以来最好的YouTube视频体验。除此之外,Vimeo、Netflix、Facebook、ABC、CBS、CNN、MSNBC、Fox News、ESPN、NPR、《时代周刊》、《纽约时报》、《华尔街日报》、《体育画报》、《人物》、《国家地理》等等网站的视频,苹果都可以流畅播放。根本没有多少视频是iPhone、iPod和iPad用户无法观看的。
Adobe的另一个理由是苹果设备无法玩Flash游戏。这一点没错。不过好在苹果在线商店提供了超过5万个游戏和娱乐应用,而且其中很多都是免费的。iPhone、iPod和iPad上的游戏与娱乐应用要多于其他任何一个平台。
第三,关于可靠性、安全性和性能表现
赛门铁克公司最近指出,Flash的安全记录在2009年名列倒数。我们还拥有一手资料,证明Flash是Mac系统死机的首要原因。我们曾经与Adobe合作想解决这些问题,但它们仍然一直困扰我们。我们不希望降低iPhone、iPod和iPad的可靠性与安全性,所以拒绝使用Flash。
另外,Flash在移动设备上的表现一直不佳。过去数年来,我们反复要求Adobe证明Flash能在移动设备上良好运行,但至今我们没有看到Flash的任何表现。Adobe曾公开表示Flash将在2009年初被一个智能手机采用,随后又改口说是下半年,后来又改口称是2010年上半年,现在他们又说要等到2010年下半年。我们相信总有一天这会成真的,但我们也庆幸没有期望太高。谁知道它会表现如何呢?
第四,电池使用寿命
播放视频时,为实现较长续航时间,移动设备必须通过硬件进行视频解码,因为在软件中进行会消耗太多电量。现在很多移动设备的芯片都包括一个名为H.264的解码器,这是一个工业标准,在所有的蓝光DVD播放器中都被使用,同时被苹果、谷歌、Vimeo和Netflix等等许多公司广泛采用。
虽然Flash最近添加了对H.264的支持,但几乎所有Flash网站的视频都需要老一代解码器来进行解码,且必须通过软件运行,因而早就不为移动芯片所采用。这个区别十分惊人:比方说,在iPhone上,H.264标准的视频可以最多播放10个小时,而用软件解码的视频只能播放不到5个小时。
网页使用H.264对视频进行再编码之后,就可以完全不使用Flash技术了。这些视频在苹果的Safari和谷歌Chrome浏览器播放时,完全不需要任何插件,在iPhone、iPod和iPad上播放的效果也很好。
第五,触屏技术
Flash是为使用鼠标的个人电脑所设计的,而并非手指控制的触摸屏。例如,许多Flash中有含有rollover,即当鼠标箭头滑过某点时,就会自动跳出菜单或者别的元素。苹果的多点触摸屏技术不再需要鼠标,也就没有了rollover这个概念。相应的,许多Flash网站必须进行改进,才能配合带有触摸屏的设备。如果开发者需要改进他们的Flash网站,那又为何不使用如HTML5、CSS和JavaScript这样更先进的技术呢?
就算iPhone、iPod和iPad支持运行Flash,也不能解决这个问题。
第六,第三方平台插足——最重要的原因
抛开Flash封闭、独断、技术缺陷和不兼容触摸设备的缺点,我们拒绝使用Flash还有一个更重要的原因。我们讨论了使用Flash播放网络视频和交互性内容的种种缺点,然而Adobe仍然要开发者用Flash来开发苹果设备的应用。
过去的经历已经让我们意识到,让一个第三方软件插足于开发者和平台之间,只会带来不合标准的应用,阻碍平台的改善与发展。如果开发者对第三方的函数库和工具产生依赖,那么唯有在第三方选择加入新功能时,开发者才能体验到和充分利用平台的优越性。我们不能被第三方的决定所左右。
如果第三方提供交叉平台开发工具,那情况就会更糟。第三方可能拒绝接受某一个平台的增强工具,除非这些工具也可以被其他它所支持的平台所利用。这样一来,开发者只能使用到所有平台共有的最低级的功能。苹果无法接受这种结果,使开发者仅仅因为我们的创新和增强工具没有出现在我们竞争对手的平台上,而无法使用这些工具。
Flash是一个交叉平台开发工具。Adobe的目标并非帮助开发者为iPhone、iPod和iPad开发最好的应用。他们的目标是协助开发者开发交叉平台应用。Adobe在增加苹果平台增强应用方面始终动作缓慢。比方说,尽管Mac OS X已经推出将进10年,Adobe两周前才在推出CS5时完全接受这个平台。Adobe是最后一个完全接受Mac OS X的第三发开发商。
我们的动机十分简单:我们只是想为开发者提供最先进和最创新的平台,同时希望他们能够利用这个平台的种种优势,来打造最好的应用。我们希望继续增强这个平台,从而使开发者能够开发出更加强大、有趣和实用的应用。因而,苹果能凭借最好的应用而销售出更多产品,开发者获得更广大的用户群,用户则可以始终在这个平台上享受到最好最全的应用。这样才是皆大欢喜。
结论
Flash诞生于PC时代,所适应的是PC和鼠标;Flash是Adobe的一项成功业务,所以我们充分理解为什么他们希望能将其推广到个人电脑以外的领域。然而,移动时代是低功耗设备、触摸屏界面和开放网络标准的时代,而移动时代的主题则是低耗电设备、触控界面和开放的网络标准——所有这些领域都是Flash所不擅长的。
事实证明,Flash已不再是互联网视频浏览的必需。苹果在线商店的超过20万个应用也证明,Flash对于上万个图像和游戏的开发者来说,也不再是必需。
新的开放标准已经被创立,比如HTML5这样的标准才会在移动设备和个人电脑上同样取得成功。或许Adobe应该注重于开发更多HTML5工具,而不是批评苹果放弃过时的东西。
IOS拒绝Adobe的六大理由的更多相关文章
- App Store审核被拒的23个理由
原文地址 iOS 应用提交审核要持续一周或者更久,在提交之前,我们一定要进行「自我审查」,避免被拒.ASO100 为大家收集整理了2015年 App Store 审核被拒的23个理由,并且附上官方拒绝 ...
- 最新App Store审核10大被拒理由
最近,苹果在官网给出了截至2015年2月份应用被拒绝的十大理由,其中50%以上的应用被拒绝都是因为这10个原因,其中7个理由和2014年相同,其中排名前三的原因分别是:需要补充更多信息.存在明显的bu ...
- App Store10大被拒理由
最近,苹果在官网给出了截至2015年2月份应用被拒绝的十大理由,其中50%以上的应用被拒绝都是因为这10个原因,其中7个理由和2014年相同,其中排名前三的原因分别是:需要补充更多信息.存在明显的bu ...
- 精华阅读第 12 期 | 最新 App Store 审核指南与10大被拒理由?
很多时候,我们对技术的追求是没有止境的,我们需要不断的学习,进步,再学习,再进步!本文系移动精英开发俱乐部的第12期文章推荐阅读整理,其中涉及到了 Android 数据库框架,架构设计中的循环引用,同 ...
- 最新App Store审核指南与10大被拒理由
最近,苹果在官网给出了截至2015年2月份应用被拒绝的十大理由,其中50%以上的应用被拒绝都是因为这10个原因,其中7个理由和2014年相同,其中排名前三的原因分别是:需要补充更多信息.存在明显的bu ...
- (转)iOS 对矢量图片的支持如何?
简单说,iOS 支持矢量图片,不过支持的一般.在系统层面上,iOS 对矢量绘图支持得很好.iOS 的 Core Graphics 框架带有很多矢量绘图命令,简单一些的直线.矩形.椭圆,复杂一些的贝赛尔 ...
- 学会拒绝,是一种智慧——OO电梯章节优化框架的思考
在本章的三次作业里,每次作业我都有一个主题,分别是:托盘型共享数据.单步电梯运行优化.多部电梯运行优化,因而电梯优化实际是第二.三次作业.虽然后两次作业从性能分上看做得还不错,但阅读其他大佬博客,我深 ...
- AppStore审核
应用被拒分为两种:Binary Rejected 和 Metadata Rejected.前者需要重新上传应用并且重新排队,后者只需要修改信息,不需要重新上传应用. 1.应用内包含检查更新功能 iOS ...
- Xcode8之后,苹果列出了最新App被拒十大原因
开发者在开发应用程序之前,熟悉苹果审核应用的技术.内容以及设计准则是非常重要的,可以大大降低应用审核被拒的可能性. 最近,苹果通过一个专门的页面给出了截止2016年10月10日应用提交审核被拒的十大原 ...
随机推荐
- Java时间操作(一):关于UTC格式时间处理
Java中获取形如:20160811T122132+08 格式,可以通过如下方法 package com.mc.others; public class UTCTimeTest { @Test pub ...
- Java正则表达式细节1
Java中使用特定的字符类别比如 \d \s \w \d 匹配数字 \s 匹配空白字符 \w 匹配数字或者字符或者下划线[a-zA-Z0-9_] 比如使员正则的时候: 使用的是2个 斜杠 @Test ...
- Selenium IDE安装
1. 网上下载firefox30版本 http://www.9ht.com/xz/78637.html#addressWrap Selenium IDE 2.9.0下载 http://www.pc ...
- Android——apk反编译
一.工具准备: 1.dex2jar:http://code.google.com/p/dex2jar/downloads/list 2.JD-GUI:windows:http://laichao.go ...
- 手动启动Android模拟器
1.5版本中加了个所谓的AVD(Android Virtual Device),AVD就相当于是一个模拟器的,不过你可以利用AVD创建基于不同版本的模拟器,然后使用emulator-avd avdNa ...
- 目前所有的ANN神经网络算法大全
http://blog.sina.com.cn/s/blog_98238f850102w7ik.html 目前所有的ANN神经网络算法大全 (2016-01-20 10:34:17) 转载▼ 标签: ...
- php中serialize、unserialize与json_encode、json_decode比较
性能比较 同一个变量编码或解码10000次,每个函数执行10000次所需时间 php5.2.13 json : 190 serialize : 257 json_encode : 0.08364200 ...
- [转] hibernate和ibatis的对比
以下文章来源于:http://blog.csdn.net/tianya2198622/article/details/3859859 IBATIS: iBATIS一词来源于“internet” ...
- 方法的标签_With携带
方法中参数的标签: 标签的由来:1.标签也是方法名的一部分:2.为了提高程序的阅读性:OC方法允许我们给每个参数添加一个标签来说明当前参数的含义: 标签的作用:标签是为了标识变量的,因此标签名和变量名 ...
- matlab中gatbx工具箱的添加
1. 从http://crystalgate.shef.ac.uk/code/下载工具箱压缩包gatbx.zip 2. 解压gatbx.zip,将其子文件夹genetic放在matlab安装目录too ...