整个年代,AdobeFlash为网络上的大多数交互式内容提供了支持,但iPhone的推出——以及苹果公司首席执行官史蒂夫·乔布斯的一项指令——改变了一切。事情是这样发生的。
闪存的兴起
最终成为AdobeFlash的最初是由FutureWaveSoftware开发的名为“SmartSketch”的应用程序。SmartSketch只是一个用于笔式计算机的矢量绘图应用程序,于年发布。最终添加了逐帧动画功能,该应用程序成为Mac和PC的FutureSplashAnimator。
Macromedia于年收购了FutureSplash,该应用程序被拆分为两个产品。MacromediaFlash将用于创建动画,而FlashPlayer将允许任何人播放这些动画而无需支付任何软件费用。重要的是,Macromedia创建了FlashPlayer的Web浏览器插件版本,它允许动画在网页内运行。
年,随着Flash5.0的发布,Flash统治世界的最后一块拼图出现了。该更新添加了ActionScript编程语言的第一个版本,它允许Flash内容是交互式的。现在Flash不仅可以用于简单的动画——它可以处理从可点击的菜单到视频播放器和复杂的Web应用程序的所有内容。
据Macromedia称,年超过98%的联网计算机安装了FlashPlayer,超过家制造商正在构建内置Flash的产品。同年,Adobe以34亿美元的股票收购了Macromedia,正式将Flash转变为Adobe产品。
iPhone
Apple于年推出了第一款iPhone,尽管iPhone将继续成为有史以来最重要的科技产品之一,但最初的型号相当有限。当时还没有AppStore(必须等到年的iOS2.0),它只在ATT上可用,缺少3G支持,它无法与MicrosoftExchange帐户同步,等等。
iPhone拥有的是一个成熟的Safari网络浏览器,完全支持HTML5视频等当时的新网络技术。但是,与网络插件不兼容,即使是当时存在于其他手机和PDA上的插件——包括AdobeFlash。苹果公司首席执行官史蒂夫乔布斯在年3月表示,Flash的移动版本“无法用于网络”,并表示iPhone需要一个“中间地带”来添加Flash支持。
苹果和史蒂夫乔布斯没有告诉任何人,至少在当时,苹果和Adobe已经尝试将Flash引入iPhone。当时苹果公司的工程主管斯科特福斯特在去年EpicGames诉苹果诉讼案的证词中透露,早期的努力并不乐观。“我们试图让Flash发挥作用。我们帮助了Adobe。我们肯定很感兴趣,”Forstall说,“当我们让它在iOS上运行时,它的性能非常糟糕和令人尴尬,它永远无法达到消费者增值的目的。”
Apple于年3月发布了第一个iPhoneSDK,同时引入了AppStore,允许开发人员(官方)首次创建和分发原生iPhone应用程序。Adobe在那年晚些时候表示,它正在开发使用SDK的iPhone版FlashPlayer,但当时还不清楚苹果是否会允许它进入AppStore。即使从AppStore的第一天开始,Apple就阻止开发人员创建可以下载和运行其他可执行代码的应用程序——这就是为什么第三方网络浏览器引擎从未在iPhone和iPad上可用的原因。这自动排除了典型的FlashPlayer,但还有其他选择。
争斗
Adobe无法在没有Apple的情况下为iPhone上的Safari制作Flash插件,但它可以朝着不同的方向发展:允许开发人员使用内置运行时包装他们的Flash内容,并将其提交到AppStore。到年6月,Adobe在Apple的iPhone模拟器中运行了Flash。在次年的AdobeMAX活动中,该公司展示了一段视频,其中有Adobe首席技术官KevinLynch(讽刺的是,他现在在Apple工作)和CreativeSolutions高级副总裁JohnnyLoiacono模仿了流言终结者。
该视频将两位高管置于“破解”“来自库比蒂诺的史蒂夫”(史蒂夫乔布斯)提出的神话的角色中,后者在一封信中表示“无法在iPhone上运行Flash”。几句插科打诨后,他们给Adobe的某个人打了电话,对方说他们刚刚在iPhone上运行了Flash。
Flash开发人员不得不等到年FlashCS5发布后才能创建基于Flash的iPhone应用程序,但就在它发布之前,Apple阻止应用程序开发人员使用它或其他第三方框架。年4月的iOS4SDK(当时称为iPhoneOS4)表示iPhone应用程序只能用Objective-C、C、C++或JavaScript编写——禁止任何其他编程环境或兼容层。
Adobe就苹果的新规则向美国联邦贸易委员会投诉,该委员会开始调查苹果可能违反反垄断法的行为。到年8月,FTC拥有近页与投诉相关的记录,并拒绝了Wired的FOIA请求,因为“可以合理地预期披露该材料会干扰委员会执法活动的进行。”换句话说,联邦贸易委员会正准备采取法律行动。
关于Flash的思考
Adobe和Apple之间的争斗在年4月29日达到高潮,当时Apple首席执行官史蒂夫·乔布斯发表了一封题为“对Flash的思考”的公开信。乔布斯在信中说,“Adobe将我们的决定描述为主要是业务驱动的——他们说我们想要保护我们的AppStore——但实际上它是基于技术问题。Adobe声称我们是一个封闭的系统,而Flash是开放的,但实际上恰恰相反。”
这封信继续解释苹果(和乔布斯)在iPhone上阻止Flash的原因。大多数观点都集中在Flash是一个“封闭系统”,其电池寿命、触摸屏支持、性能、视频硬件解码和安全性都很差。乔布斯还强调,Flash的许多功能都可以通过HTML5视频和iPhone支持的其他功能来处理,如果Flash开发人员无论如何都必须更新他们的代码以支持触摸屏和iPhone,他们应该一直走下去,用iPhone重写他们的应用程序。本机或网络代码。
乔布斯的信在某些方面绝对是虚伪的——他关于Flash是一个封闭系统的一些观点也可以应用于苹果的AppStore——但他的大部分观点仍然有效。他最后说:“也许Adobe应该更多地专注于为未来创造出色的HTML5工具,而不是批评苹果公司将过去抛在脑后。”
AdobeCEOShantanuNarayen不久后接受了采访。他称这封信是“非同寻常的攻击”,并否认有关电池过度消耗的说法。“我们有不同的世界观,”他说,“我们的世界观是多平台的。”
胜利为时已晚
也许是由于FTC可能采取的法律行动,Apple在年9月再次更改了其开发者协议。该公司现在允许应用程序开发人员使用他们想要的任何工具,包括AdobeFlash,“只要生成的应用程序不下载任何代码。”不久之后,Adobe恢复了Flash-to-iPhone编译器的开发。
不幸的是,对于Adobe,世界已经开始从Flash转移。更多网站正在更新以支持HTML5视频,或为iPhone、iPad、Android和其他移动平台提供本机应用程序。Adobe于年停止了所有移动设备的FlashPlayer,将打包工具(如Apple现在允许的工具)作为在Android和其他移动平台上运行Flash软件的唯一方式。
Flash在桌面平台上也逐渐失宠,主要是由于其长期存在的安全问题。例如,几乎每次发现安全漏洞时,Apple都会使用其恶意软件保护系统来阻止FlashPlayer在Mac上运行。
AdobeFlash于年12月31日在所有平台上正式停产。那时大多数网络浏览器已经放弃了对Flash插件的支持,微软推出了Windows更新,如果安装了Flash,就会删除它。
Flash对计算机产生了不可思议的影响,它为现代Web应用程序铺平了道路。然而,到了年,绝对是时候继续前进了——史蒂夫乔布斯可以说给了这个行业一点推动力。
#科技日报#