Steve Jobs pans Flash on the iPhone

Posted:
in iPhone edited January 2014
Over the last year, many observers have wondered when Apple would deliver Adobe Flash support on the iPhone. At the company's shareholder meeting on Tuesday, Steve Jobs made comments that indicate that support isn't coming anytime soon, thanks to architectural limitations in Flash itself. A full explanation of those limitations follow.



Why Flash?



The iPhone's mobile Safari browser delivers such a desktop-like experience that the main remaining element missing for most users has related to Flash, software commonly used by web designers to add interactive applets to their websites. Adobe's Flash acts as a self contained environment for presenting interactive, animated elements on web pages.



The most common use of Flash is in banner ads that goad users to click the moving monkey or fight an opponent in order to draw attention to an advertised product. Flash has also become the lowest common denominator for embedding video clips into webpages, making it easier for web developers to present video clips that works on any system without forcing users to install a plugin.



Flash just works because most web users have the required plugin already installed; Adobe has bundling agreements with both Microsoft's Windows and Apple's Mac OS X. Users who don't have Flash pre-installed can download it for free, and Adobe now even offers a Linux version of the plugin.



Flash on the iPhone



Less technically inclined pundits have expected Apple to release a Flash plugin for the iPhone that works identically to the plugin used on desktop computers, similar to how the iPhone supports viewing PDF documents or Microsoft Word and Excel files. The problem is that the Flash runtime has never been designed to work on anything outside of a desktop computer, which has almost unlimited access to processing power and few constraints on battery use, available RAM, or heat dissipation.



The iPhone is a very different product. It's a fraction of the size of a laptop battery and uses a low power, embedded ARM processor that works unlike the Intel Core or PowerPC processors used in Macs and PCs that can run Flash. In order to develop a Flash plugin for the iPhone, Adobe's proprietary software would need to be recompiled and optimized for the ARM architecture, which isn't something Apple could easily do independent of Adobe.



More Problems for Flash



There are other problems that are even more significant, however. While desktop computers can typically afford to run any process at full bore, the iPhone's processor is not only smaller and slower, but also designed to use power far more efficiently, cycling down when not needed in order to both conserve power and to limit the heat that a fully running processor would produce.



The iPhone's OS X environment is also designed to run from a relatively small disk image stored in NVRAM; Adobe's Flash is designed to run on a desktop machine with few limitations on the amount of disk space consumed or RAM used; it can easily leak memory and gobble up more RAM than svelte iPhone apps are ever intended to use.



Even if Adobe could deliver its own Flash plugin for the iPhone that cleanly ported the aging Flash environment to ARM, the work required to optimize power and memory consumption and manage heat dissipation would result in a plugin that could not run the majority of Flash web applets that have been designed to work on desktop computers. This would be like a Windows emulator that only runs software specifically designed for Vista; the majority of users would want a version of Flash that runs all the old code out there on the web, not just a subset of newly developed applets that aren't available yet.



A Big Maybe



None of this should be any surprise to developers who have been keeping tabs on Apple's guidelines for iPhone development. Last January, Jobs said the iPhone would not ship with support for Sun's Java, but left a question mark hanging on the subject of Flash support, using the word "maybe."



Between then and the arrival of the iPhone in late June, Apple began work with Google to migrate the YouTube video library from a Flash-based player designed to run from a web page to a custom iPhone interface that downloads ISO standard, MPEG 4 H.264 videos from Google's servers. H.264 is the same standard video format being used by everything from Sony's Blu-Ray discs to Apple's iTunes and open source libraries such as x264.



That move was clearly an effort to greatly reduce the iPhone's need for Flash as a container for distributing web videos. Once the iPhone was delivered, the appearance of its H.264 YouTube player and the lack of Flash support dropped a big hint about the likelihood of Flash ever arriving, but the evidence against Flash support on the iPhone continued to mount.



Dear Developers: Don't Use Flash



As noted in Gone in a Flash: More on Apple?s iPhone Web Plans, an Apple developer document published in June entitled "Optimizing Web Applications and Content for iPhone" presented a number of recommendations to iPhone web developers that did not exactly convey optimism about the speedy arrival of a Flash plugin. It made four curious references to Flash on the iPhone:

"Don?t bring up JavaScript alerts that ask users to download Flash. Flash isn?t supported and neither are downloads.""Safari on iPhone does not support? Java applets, Flash, Plug-in installation"Under the section "Unsupported Technologies," Apple listed one technology: Flash."You?ll want to avoid using Flash and Java for iPhone content. You?ll also want to avoid encouraging users to download the latest Flash on their iPhone, because neither Flash nor downloads are supported by Safari on iPhone."

The guidelines didn?t just tell developers to "deal with the existing omission of Flash," but instead suggested they begin using more open alternatives. It actively encouraged developers to "Stick With Standards," recommending CSS, JavaScript, and Ajax on the iPhone. "The web is always evolving, and as it does, so will Safari," the report noted. "You?ll want to keep informed of the evolving standards emanating from WHATWG and W3C standards bodies."



The WHATWG, of which Apple is member, is a standards Working Group specifically developing Web Hypertext Application Technologies, quite specifically alternatives to using Adobe's proprietary Flash, Flex or AIR, or Microsoft's competing Silverlight, which is targeted directly at Flash as well.



Other limitations Apple lists for developers building iPhone web apps forbid the use of polling in JavaScript; the use of any non-streaming media, images, HTML or script downloads over 10MB; any JavaScript executions that last longer than five seconds; the use of mouse-over events (a limitation posed by using a touch screen rather than a click or hover mouse); and user interaction involving file uploads and downloads.



All of these limitations would also apply to a hypothetical Adobe Flash iPhone environment, making Adobe's task of porting its environment to the iPhone extremely difficult; the practical requirement of running existing Flash applets, which make heavy use of mouse-overs, downloads, and event loops, would simply render a usable Flash on the iPhone impossible.



The Flash Lite at the End of the Tunnel



It's noteworthy that Adobe has moved away from attempting to port the full Flash runtime to other mobile phones. Instead, the company developed Flash Lite, a simplified scripting runtime designed to provide a user interface layer of interactivity that could be used to design basic phone interfaces. Flash Lite doesn't run any of the Flash content found on websites, rendering it worthless to iPhone users.



Apple's phone already has a far more sophisticated development environment for building real desktop-style applications called Cocoa; Flash Lite is really only useful to mobile service providers who want to add a standardized layer of graphics on the handsets they sell to make them all look cohesively branded.



That's why Jobs said at Tuesday's shareholders meeting that Flash Lite "is not capable of being used with the web." It simply is not a web plugin technology and only bears fleeting relation to the desktop computer Flash, which Jobs said "performs too slow to be useful" on the iPhone.



The Missing Product in the Middle.



"There's this missing product in the middle," Jobs continued, but based on the developer documentation Apple provides for the iPhone, it's clear Apple isn't holding its breath waiting for Adobe to develop this missing product.



That missing product is unlikely to ever exist, because compatibility with existing desktop Flash applets simply isn't a good fit in a mobile device, particularly an aggressively battery efficient ARM unit like the iPhone. That's not really a problem because, while Flash makes a convenient way to develop web applets for desktop users who have the Flash plugin already installed, it really doesn't offer much for iPhone users apart from the ability to access Flash web video clips, view flashing ad banners, and see Flash applets sites on sites that use them.



Apple insists there are better alternatives to all three. The company is pushing the use of standard H.264 video, advocating the future development of standards-based web applications with WHATWG and HTML 5.0 along with partners Firefox and Opera (and increasingly Microsoft), and using Ajax technologies centered on open standards including JavaScript and CSS right now. In fact, Apple has removed nearly every vestige of Flash from its corporate website.



Apple has done so much to present open alternatives to Flash that it seems to make it pretty clear that the company is not only betting against Adobe ever porting an acceptable Flash runtime for the iPhone, but also seems to suggest that Apple would rather the iPhone's web browser be entirely free of any dependence upon Adobe at all.

«1345678

Comments

  • Reply 1 of 160
    No comment other than they should try harder!!
  • Reply 2 of 160
    boogabooga Posts: 1,082member
    Although Flash ads are probably the most common flash I see on a daily basis, the only ones I ever interact with are the games on Facebook. I always have a few Scrabulous games going, and not being able to play on my iPod Touch is annoying. I understand there's a more official Scrabble game coming out for the iPhone/Touch, but if it doesn't play against Scrabulous users it's close to useless for me.
  • Reply 3 of 160
    asciiascii Posts: 5,936member
    Maybe Apple are making a principled stand that the web should be not proprietary, or maybe they just don't want to promote a competitor to Quicktime.
  • Reply 4 of 160
    stevetimstevetim Posts: 482member
    Article very well done! I understand the difficulties much better and Job's is not as stupid as I thought. Adobe and Apple should publically get together and solve the problem.
  • Reply 5 of 160
    mr. hmr. h Posts: 4,870member
    Quote:
    Originally Posted by AppleInsider View Post


    Even if Adobe could deliver its own Flash plugin for the iPhone that cleanly ported the aging Flash environment to ARM, the work required to optimize power and memory consumption and manage heat dissipation would result in a plugin that could not run the majority of Flash web applets that have been designed to work on desktop computers.



    This is not necessarily true.



    Adobe Flash, like most modern desktop software, is a horribly bloated, convoluted, memory-leaking, CPU-hogging piece of crap.



    I seem to recall having a 300 MHz G3 with 192 MiB of RAM (in 1999) that ran Macromedia Flash just fine. The iPhone's processor runs at 600 MHz and has 1 GiB of RAM.



    What exactly has been added to flash since 1999, functionality wise? The only significant thing I can think of is H.264 support, and the iPhone is clearly capable of handling H.264.



    So actually, Adobe really should focus on streamlining and optimising Flash. It is possible to make full-blooded Flash work on the iPhone, they'd just have to make the underlying architecture "not shit (TM)". Of course, this would benefit desktop users as well as iPhone users. I guess the problem is that Adobe would have to hire decent software programmers, and it seems like there's probably only 3 in the entire world.
  • Reply 6 of 160
    mr. hmr. h Posts: 4,870member
    Quote:
    Originally Posted by stevetim View Post


    and Job's is not as stupid as I thought.



    What's with the modern obsession of putting an apostrophe before any letter "s" that appears at the end of a word? The man's name is "Jobs".
  • Reply 7 of 160
    If you use 'SysInfo' on jailbroken phones you can see that the following stats:



    Phys. Memory 116 MB

    CPU 412 mhz

    Bus 103.00 mhz





    I seem to recall having a 300 MHz G3 with 192 MiB of RAM (in 1999) that ran Macromedia Flash just fine. The iPhone's processor runs at 600 MHz and has 1 GiB of RAM.
  • Reply 8 of 160
    If I'm reading this correctly, it sucks that iPhone does not support Javascript. The solution to no flash could be solved with Javascript, if only you're using the flash as a way of animating static websites.
  • Reply 9 of 160
    You need to re-read. Javascript works fine on the iPhone.
  • Reply 10 of 160
    ASCII: Couldn't agree more. And given what Apple has invested in QT and perhaps what they stand to lose, why would SJ want Flash on the iPhone?



    What Apple should (and might well be trying to do) is negotiate with Adobe to buy Flash.



    That all said, I hate Flash, but I want it on my iPhone until QT takes over.
  • Reply 11 of 160
    libmanjlibmanj Posts: 9member
    Quote:
    Originally Posted by cherrypop View Post


    ASCII: Couldn't agree more. And given what Apple has invested in QT and perhaps what they stand to lose, why would SJ want Flash on the iPhone?



    What Apple should (and might well be trying to do) is negotiate with Adobe to buy Flash.



    That all said, I hate Flash, but I want it on my iPhone until QT takes over.



    When it all comes down to it, the iPhone does not provide the "full internet" as promised, and what keeps it from doing so is the absence of Flash.



    Add me to the list of those who suggest that Apple and Adobe should get together and figure this one out.
  • Reply 12 of 160
    This article isn't exactly true with regards to Flash Lite or Flash on a mobile device. For instance I had a Windows Mobile phone many years ago which had a Flash plugin for Pocket Internet Explorer. I don't know up to what version of Flash this supported but it played Flash animations at the time just fine. This was before I'd even heard of YouTube. That phone had a 400Mhz ARM9 processor and 64MB RAM.



    The Nokia N95 8GB has a firmware now which has Flash Lite 3 added to it along with a plugin for it's WebKit based browser. This allows this phone to play inline Flash videos on YouTube and other sites without problems. This device has a 330Mhz ARM11 core CPU and 128MB RAM, still slower than the iPhone's processor which as far as I know is a 400Mhz ARM11 unit.



    Microsoft is porting Silverlight to S60 so an ARM core has the power to run this as well. Also I don't think Nokia's browser runs Java inside but they do have Java on the phone in the form of the mobile version of Java J2ME.



    So while there would be problems with things like mouse overs on the iPhone, there is no technical reason that it couldn't be done. It's a case of either Adobe not wanting to port it or Apple not allowing them. I'm sure it would affect battery life but if it could be disabled or not run without the user activating the control then this wouldn't be so bad, it would stop Flash adverts at least.
  • Reply 13 of 160
    allblueallblue Posts: 393member
    This article is an example of what AppleInsider does best - explaining technical matters in a way that non-techy people such as myself can understand. Good stuff!



    @Mr H



    Much as I respect your effort, I'm not sure your sig is quite right. 'It has' becomes the possessive pronoun spelt 'its' i.e 'belonging to it' doesn't it? In which case, you're going to have to change your sig there, otherwise they're going to get it wrong in their posts aren't they?
  • Reply 14 of 160
    virgil-tb2virgil-tb2 Posts: 1,416member
    Quote:
    Originally Posted by libmanj View Post


    When it all comes down to it, the iPhone does not provide the "full internet" as promised, and what keeps it from doing so is the absence of Flash....



    It depends how you define "Internet."



    The Internet was conceived as an open, standards-based network. The iPhone provides the "full" Internet minus the proprietary add-ons, so you could argue that this meets the description. Advertising was never intended to be part of the Internet either.



    I hope Apple never enables Flash on the iPhone, and after reading this article I understand how incredibly stupid the argument for Flash really is. Most people who want it, seem to want it for reasons that are lame, like playing games and watching videos and there are much better alternatives as to those uses as the article points out. People don't seem to "want Flash" as much as they just see the broken web pages and want it to work.



    If the SDK arrives as rumoured however, there is nothing to stop Adobe from writing a Flash plug-in for the iPhone and distributing it through iTunes. It will be interesting (after noting the technical information in this article), to see if they are up to the task. Adobe has a reputation for making the exact kind of bloated, poorly coded crap software that would be anathema to the iPhone.



    I bet they can't do it.
  • Reply 15 of 160
    hal 9000hal 9000 Posts: 101member
    Apple needs to get Quicktime streaming to work on the iPhone. As of now, you can´t see live video feeds. You should be able to see Macworld Expo live on the iPhone.
  • Reply 16 of 160
    elffirelffir Posts: 23member
    Nice pun on "flash in the pan".
  • Reply 17 of 160
    <2cents<2cents Posts: 10member
    Screw Flash. In fact, can someone recommend a good way to disable Flash in Safari?



    Generally speaking, Adobe products have gotten worse on the Mac. Everything seems so bloated now, sort of like Microsoft products.
  • Reply 18 of 160
    tenobelltenobell Posts: 7,014member
    Quote:

    I seem to recall having a 300 MHz G3 with 192 MiB of RAM (in 1999) that ran Macromedia Flash just fine. The iPhone's processor runs at 600 MHz and has 1 GiB of RAM.



    The desktop G3 was not constrained by by CPU runtime or power conservation.



    Quote:

    What exactly has been added to flash since 1999, functionality wise? The only significant thing I can think of is H.264 support, and the iPhone is clearly capable of handling H.264.



    Flash couldn't show video at all in 1999. There have been changes



    Quote:

    This article isn't exactly true with regards to Flash Lite or Flash on a mobile device.



    From what I understand about Flash Lite is that it is not capable of showing all flash content and uses excessive amount of memory and power as it works.



    Quote:

    Apple needs to get Quicktime streaming to work on the iPhone. As of now, you can´t see live video feeds. You should be able to see Macworld Expo live on the iPhone.



    Not all QuickTime video works on the iPhone. The streaming video has to be of the right size and bit rate to play within the iPhones limited resources.



    Apple lists iPhone video formats supported: H.264 video, up to 1.5 Mbps, 640 by 480 pixels, 30 frames per second, Low-Complexity version of the H.264 Baseline Profile
  • Reply 19 of 160
    hezekiahbhezekiahb Posts: 448member
    Quote:
    Originally Posted by cherrypop View Post


    ASCII: Couldn't agree more. And given what Apple has invested in QT and perhaps what they stand to lose, why would SJ want Flash on the iPhone?



    What Apple should (and might well be trying to do) is negotiate with Adobe to buy Flash.



    That all said, I hate Flash, but I want it on my iPhone until QT takes over.



    The QT conspiracy comments make no sense folks. If it really was a QT conspiracy on the part of Steve Jobs wouldn't Adobe be crying wolf over it? Think about it.



    I think the issues with flash might actually be in Adobe's long history with Macromedia. Seems to me that Macromedia was rocketing in it's flash development until Adobe started feeling threatened & bought them out. Past few years the releases seem like they've only brought minor improvements & development quality seems like it has really gone down hill.



    I really think Adobe just doesn't care all that much about flash anymore, they just wanted to ensure their creative suite monopoly on the graphics world.
  • Reply 20 of 160
    The article was a good read, although slightly biased against Flash!? + the comments here against flash are far from factual!



    WHATS THE REAL REASON FOR THIS?



    Apple is taking you all for fools...Apple just want's to OWN the Application Software Development stack amongst other controls!



    FastLaneJB is in the correct lane and driving like a true pro, he said:



    This isn't entirely accurate

    This article isn't exactly true with regards to Flash Lite or Flash on a mobile device. For instance I had a Windows Mobile phone many years ago which had a Flash plugin for Pocket Internet Explorer. I don't know up to what version of Flash this supported but it played Flash animations at the time just fine. This was before I'd even heard of YouTube. That phone had a 400Mhz ARM9 processor and 64MB RAM.



    The Nokia N95 8GB has a firmware now which has Flash Lite 3 added to it along with a plugin for it's WebKit based browser. This allows this phone to play inline Flash videos on YouTube and other sites without problems. This device has a 330Mhz ARM11 core CPU and 128MB RAM, still slower than the iPhone's processor which as far as I know is a 400Mhz ARM11 unit.
Sign In or Register to comment.