苹果CEO乔布斯的公开信:批判Flash,看好HTML5
苹果CEO乔布斯于2010年4月29日在苹果官网发表了一封公开信,阐述了自己对于Flash的看法及Apple与Adobe的关系。
他希望能解释他对Adobe的Flash产品的一些看法,以便顾客和评论家们能更好地理解苹果为什么不在iPhone、iPod和iPad上支持Flash。
乔布斯列出了苹果不支持Flash的六点原因,这里我们总结了他的大概意思,文章最后附有原版的英文公开信。
1.开放性:Flash是专利产品,是一个封闭的系统。苹果虽然也有专利产品,但苹果坚持Web标准的开放。乔布斯指出,苹果支持的开放web标准有: HTML5, CSS,JavaScript,还有苹果自己的WebKit。
他说“Adobe把我们的决定称为商业的驱使——他们说我们想保护App Store,但实际上这是技术上的问题。Adobe对外说我们的系统封闭,Flash开放,其实反过来的说法才是对的。”
2.完整的网页:Adobe声称苹果移动设备不支持Flash会导致用户看到的网页的不完整,因为75%的视频使用了Flash格式。但乔布斯反驳说,几乎所有的视频已经采用先进的H.264格式,所以他们都能够在iphone OS设备上播放。(这与微软IE总经理的看法是一致的)
3.可靠性、安全性和性能:乔布斯引用了美国著名软件公司Symantec的一项研究结果显示,Flash的安全性最差,而Flash正是Mac系统崩溃的首要原因。苹果曾向Adobe提出过问题,但没有得到修复。他还说不仅是苹果,他还没见过Flash能在任何一款设备上表现完好。
4.耗电量:持久的电池续航时间实际上要求硬件解码格式,但大多Flash网站还在使用陈旧的软件解码器,这多少增加了设备的耗电量。
5.触控:Flash的内容更适于鼠标操控,所以在苹果的触屏设备上并不那么好用。这要求开发者需要重新编写自己的Flash网站,以便支持更先进的触控技术,这极大增加了开发的工作量。
6.Flash作为第三方开发工具:乔布斯说苹果之所以不允许开发者使用Flash或其他第三方开发工具来开发iPhone应用,是因为第三方工具适应变化和改善的能力低于开放的标准,而且可靠度也很低。
另外,乔布斯说,苹果采用HTML5新标准,可让Web开发者建立更先进的绘图、字型、动画与转换,完全不需仰赖第三方浏览器插件,这与Flash不同;HTML5完全开放,由标准委员会控制,苹果也在其中。苹果甚至也自创Web的开放标准WebKit,这是一个完整开放原始码HTML5呈现引擎,是Safari网页浏览器的核心,Google在Android的浏览器也有采用,Palm也是,Nokia也有用,RIM(BlackBerry黑莓)也已经宣布未来会采用。
最后,乔布斯说:“我们的动机很简单——我们只想为我们的开发者提供最先进和创新的平台,而且我们希望他们能站在这样的平台上,创造出世界最好的软件。我们还将继续改善我们的平台,以便开发者能创造出更神奇、强大、有趣而有用的应用程序。这是三赢的决策——我们销售更多的设备,因为我们拥有最后的软件,而开发者也因此获得越来越多的用户,最后用户也能从我们最好的平台和最好的应用中获得愉快的体验。”
俗话说店大欺客,客大欺店。苹果敢于放弃目前广泛使用的FLASH,也是用自身实力和魄力的挑战。这无疑加速了FLASH退出舞台或者选择进行变革。
以下是该公开信的原文:
Thoughts on Flash
Apple has a long relationship with Adobe. In fact, we met Adobe’s founders when they were in their proverbial garage. Apple was their first big customer, adopting their Postscript language for our new Laserwriter printer. Apple invested in Adobe and owned around 20% of the company for many years. The two companies worked closely together to pioneer desktop publishing and there were many good times. Since that golden era, the companies have grown apart. Apple went through its near death experience, and Adobe was drawn to the corporate market with their Acrobat products. Today the two companies still work together to serve their joint creative customers – Mac users buy around half of Adobe’s Creative Suite products – but beyond that there are few joint interests.
I wanted to jot down some of our thoughts on Adobe’s Flash products so that customers and critics may better understand why we do not allow Flash on iPhones, iPods and iPads. Adobe has characterized our decision as being primarily business driven – they say we want to protect our App Store – but in reality it is based on technology issues. Adobe claims that we are a closed system, and that Flash is open, but in fact the opposite is true. Let me explain.
First, there’s “Open”.
Adobe’s Flash products are 100% proprietary. They are only available from Adobe, and Adobe has sole authority as to their future enhancement, pricing, etc. While Adobe’s Flash products are widely available, this does not mean they are open, since they are controlled entirely by Adobe and available only from Adobe. By almost any definition, Flash is a closed system.
Apple has many proprietary products too. Though the operating system for the iPhone, iPod and iPad is proprietary, we strongly believe that all standards pertaining to the web should be open. Rather than use Flash, Apple has adopted HTML5, CSS and JavaScript – all open standards. Apple’s mobile devices all ship with high performance, low power implementations of these open standards. HTML5, the new web standard that has been adopted by Apple, Google and many others, lets web developers create advanced graphics, typography, animations and transitions without relying on third party browser plug-ins (like Flash). HTML5 is completely open and controlled by a standards committee, of which Apple is a member.
Apple even creates open standards for the web. For example, Apple began with a small open source project and created WebKit, a complete open-source HTML5 rendering engine that is the heart of the Safari web browser used in all our products. WebKit has been widely adopted. Google uses it for Android’s browser, Palm uses it, Nokia uses it, and RIM (Blackberry) has announced they will use it too. Almost every smartphone web browser other than Microsoft’s uses WebKit. By making its WebKit technology open, Apple has set the standard for mobile web browsers.
Second, there’s the “full web”.
Adobe has repeatedly said that Apple mobile devices cannot access “the full web” because 75% of video on the web is in Flash. What they don’t say is that almost all this video is also available in a more modern format, H.264, and viewable on iPhones, iPods and iPads. YouTube, with an estimated 40% of the web’s video, shines in an app bundled on all Apple mobile devices, with the iPad offering perhaps the best YouTube discovery and viewing experience ever. Add to this video from Vimeo, Netflix, Facebook, ABC, CBS, CNN, MSNBC, Fox News, ESPN, NPR, Time, The New York Times, The Wall Street Journal, Sports Illustrated, People, National Geographic, and many, many others. iPhone, iPod and iPad users aren’t missing much video.
Another Adobe claim is that Apple devices cannot play Flash games. This is true. Fortunately, there are over 50,000 games and entertainment titles on the App Store, and many of them are free. There are more games and entertainment titles available for iPhone, iPod and iPad than for any other platform in the world.
Third, there’s reliability, security and performance.
Symantec recently highlighted Flash for having one of the worst security records in 2009. We also know first hand that Flash is the number one reason Macs crash. We have been working with Adobe to fix these problems, but they have persisted for several years now. We don’t want to reduce the reliability and security of our iPhones, iPods and iPads by adding Flash.
In addition, Flash has not performed well on mobile devices. We have routinely asked Adobe to show us Flash performing well on a mobile device, any mobile device, for a few years now. We have never seen it. Adobe publicly said that Flash would ship on a smartphone in early 2009, then the second half of 2009, then the first half of 2010, and now they say the second half of 2010. We think it will eventually ship, but we’re glad we didn’t hold our breath. Who knows how it will perform?
Fourth, there’s battery life.
To achieve long battery life when playing video, mobile devices must decode the video in hardware; decoding it in software uses too much power. Many of the chips used in modern mobile devices contain a decoder called H.264 – an industry standard that is used in every Blu-ray DVD player and has been adopted by Apple, Google (YouTube), Vimeo, Netflix and many other companies.
Although Flash has recently added support for H.264, the video on almost all Flash websites currently requires an older generation decoder that is not implemented in mobile chips and must be run in software. The difference is striking: on an iPhone, for example, H.264 videos play for up to 10 hours, while videos decoded in software play for less than 5 hours before the battery is fully drained.
When websites re-encode their videos using H.264, they can offer them without using Flash at all. They play perfectly in browsers like Apple’s Safari and Google’s Chrome without any plugins whatsoever, and look great on iPhones, iPods and iPads.
Fifth, there’s Touch.
Flash was designed for PCs using mice, not for touch screens using fingers. For example, many Flash websites rely on “rollovers”, which pop up menus or other elements when the mouse arrow hovers over a specific spot. Apple’s revolutionary multi-touch interface doesn’t use a mouse, and there is no concept of a rollover. Most Flash websites will need to be rewritten to support touch-based devices. If developers need to rewrite their Flash websites, why not use modern technologies like HTML5, CSS and JavaScript?
Even if iPhones, iPods and iPads ran Flash, it would not solve the problem that most Flash websites need to be rewritten to support touch-based devices.
Sixth, the most important reason.
Besides the fact that Flash is closed and proprietary, has major technical drawbacks, and doesn’t support touch based devices, there is an even more important reason we do not allow Flash on iPhones, iPods and iPads. We have discussed the downsides of using Flash to play video and interactive content from websites, but Adobe also wants developers to adopt Flash to create apps that run on our mobile devices.
We know from painful experience that letting a third party layer of software come between the platform and the developer ultimately results in sub-standard apps and hinders the enhancement and progress of the platform. If developers grow dependent on third party development libraries and tools, they can only take advantage of platform enhancements if and when the third party chooses to adopt the new features. We cannot be at the mercy of a third party deciding if and when they will make our enhancements available to our developers.
This becomes even worse if the third party is supplying a cross platform development tool. The third party may not adopt enhancements from one platform unless they are available on all of their supported platforms. Hence developers only have access to the lowest common denominator set of features. Again, we cannot accept an outcome where developers are blocked from using our innovations and enhancements because they are not available on our competitor’s platforms.
Flash is a cross platform development tool. It is not Adobe’s goal to help developers write the best iPhone, iPod and iPad apps. It is their goal to help developers write cross platform apps. And Adobe has been painfully slow to adopt enhancements to Apple’s platforms. For example, although Mac OS X has been shipping for almost 10 years now, Adobe just adopted it fully (Cocoa) two weeks ago when they shipped CS5. Adobe was the last major third party developer to fully adopt Mac OS X.
Our motivation is simple – we want to provide the most advanced and innovative platform to our developers, and we want them to stand directly on the shoulders of this platform and create the best apps the world has ever seen. We want to continually enhance the platform so developers can create even more amazing, powerful, fun and useful applications. Everyone wins – we sell more devices because we have the best apps, developers reach a wider and wider audience and customer base, and users are continually delighted by the best and broadest selection of apps on any platform.
Conclusions.
Flash was created during the PC era – for PCs and mice. Flash is a successful business for Adobe, and we can understand why they want to push it beyond PCs. But the mobile era is about low power devices, touch interfaces and open web standards – all areas where Flash falls short.
The avalanche of media outlets offering their content for Apple’s mobile devices demonstrates that Flash is no longer necessary to watch video or consume any kind of web content. And the 200,000 apps on Apple’s App Store proves that Flash isn’t necessary for tens of thousands of developers to create graphically rich applications, including games.
New open standards created in the mobile era, such as HTML5, will win on mobile devices (and PCs too). Perhaps Adobe should focus more on creating great HTML5 tools for the future, and less on criticizing Apple for leaving the past behind.
Steve Jobs
April, 2010
本文链接地址:苹果CEO乔布斯的公开信:批判Flash,看好HTML5 [http://html5cn.net/archives/58.html]
本站部分文章转载自其它媒体,因不能证实出处可能未予注明。如果侵犯了您的权益,我们十分抱歉。请给我们留言,我们将注明原文链接或删除文章。