Unofficial news and tips about Google

April 30, 2010

On Flash for Mobile Phones

Apple's CEO wrote a thoughtful post about Adobe Flash and explained the reasons why Apple doesn't intend to add support for Flash to the iPhone OS:

"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."

Steve Jobs says that Flash doesn't perform well on mobile devices, it drains the battery and it's not optimized for touch interfaces. Flash is also a way to create cross-platform applications, but Apple doesn't want applications that look the same way on all mobile platforms and don't take advantage of iPhone's features. "We cannot be at the mercy of a third party" is the main reason why Steve Jobs doesn't want to include Flash's runtime. Flash's main use today is to play videos, but web developers should start using the native video tag, which is already supported by most web browsers, including iPhone's browser.

Apple's refusal to support Flash in popular products like iPhone or iPad has an important side-effect: web developers will be forced to take advantage of HTML5 features like native video, canvas or create animations using SVG, instead of/in addition to using Adobe's proprietary plug-in.

Unfortunately, users can't access a lot of content on their mobile devices. There are many sites built using Flash and many popular sites use Flash to create animations, charts and other interactive content. Adobe is already working on Flash Player 10.1, the first version of the plug-in that will work on smartphones, if you don't take into account Flash Lite. Flash will soon be available for Android, Windows Mobile, Symbian, Palm and Google will include the plug-in in Chrome and Chrome OS. Flash Player 10.1 for Android will be available as a public preview in May at Google I/O and the general release will be in June.

Google's decision is pragmatic: even if HTML5 is the future, Flash is an important part of the web today. "[Sometimes being open] means not being militant about the things consumer are actually enjoying," said Google's Andy Rubin. Users will be able to choose if they want to enable Flash and Adobe will be pressured to deliver a better product.

Some might say that Android is actually the anti-iPhoneOS: it's an open source operating system, it encourages competition and collaboration in the mobile space, it lets you replace built-in functionality, install applications from other sources than the Android Market and customize your device. Android is not "at the mercy of a third party", but third parties can add a lot of value. Even if Android's user experience is inferior to iPhone's user experience, Android is an open platform that can be fully customized and a better catalyst for innovation. Android doesn't strive for perfection, it's a flexible platform that lets you transform a device into whatever you want it to be.

Jobs forgets that Apple also uses proprietary software. You cannot look at a video on apple.com without downloading a plugin called Apple Quicktime. Apple.com doesn't run videos in H.264. Hypocrites! Quicktime media files run native on the iPod, iPhone and iPad.

W3.org will never allow HTML to become as robust as a binary media format, because of the security risks. Websites would become viruses (deleting your files) and you wouldn't know it. So to get a "rich interactive" experience people will have to use media formats like Quicktime, Flash and Silverlight. Remember Quicktime VR? That was to coolest thing rotating all over the place! It was on automotive and real estate websites. When you have a binary media format you can do more faster. As a developer, if you knew what it took to mimic the grand effects of what media formats do, you would second guess creating it because of time constraints.

I'm looking foward to the day I can play a HTML version of Battlefield Bad Company 2 in the browser like it does on the PS3. But that won't happen in my lifetime.

@Anatoliana, cross-platform is NOT dead you idiot!! When you see a video game advertised, at the bottom you see all the platforms it runs on. What if they had no tools that helped them port faster across multiple platforms? Look how long consumers would have to wait for the same product. Don't you know Apple uses the same code for their safari browser on Mac, iPhone OS and Windows updates? Who wants to play employees to learn and develop in different languages for different platforms. You have that kind of cash?

Adobe and Microsoft put themselves in a very good position (because companies requested cross platforming) and Apple knows it. Flash and Silverlight are on Windows, MacOS and Linux. PCs can handle the performance, iPhone OS devices cannot because of sorry Open CL. Maybe client side Javascript will tap into video hardware, depends on the OS I suppose. A .Net developer can make an app in silverlight and it will run on Windows PCs, Windows Phone 7, Windows Netbooks/Tablets, Macs, Linux and Windows Surface table. All that using the same code. Ebay announced an app store selling silverlight applications. Google's app store should follow selling like apps for it's Linux based Chrome OS. Congrats to Apple for doing well in these days, but they are positioning themselves for checkmate if they don't give developers more power than what HTML and Open CL can offer. Why should I develop for a calculator, because it's not a computer? Objective C is a terrible language! It takes too much code to do a simple Hello World.

You believe everything the Jobs and the media says. I don't hate or love any tech company, but am just saying some of you consumers don't think about what you're saying.

I think it is clear what is the real reason they don't want flash, they want to keep their monopoly over what can be run on iphone. This is the usual way Apple plays the game, they want total control over the device. Also they want to be distinguished from the rest, that is what is appealing to Apple's consumer base and they want to keep it. If iphone just becomes an expensive device similar to other running the same applications even the extreme Apple fans would think twice before going for it. I found it funny that Steve Jobs talks about openness and criticizes Adobe about it, it is just RIDICULOUS and Jobs and Apple show once again how sincere they are.

I think Android and Maemo are the future, but their current problem is that there are major software companies developing software for them, the quality of available software is inferior to iphone's and currently the most popular programs on Android market are Google's products. I predict this will change, specially if Google find a good way to share mobile advertisement revenue with developers quickly. Nexus has simply awesome hardware, Android is clearly superior to iphone OS, the only problem is applications. Right now there is not even a good text viewer/editor, sound recorder, ... so many basic applications are missing. Android needs major application developers to start developing for it.

Now, if it could be demonstrated that HTML5 would reach an expanded audience for Pr0n, then the discussion would be over. Sad, but true, that industry has driven technology over the past couple of decades.

@Alex_Chitu "Even if Android's user experience is inferior to iPhone's user experience" & "Android doesn't strive for perfection" - these 2 statements scare the hell out of me as an "end user" when i decide to purchase. The whole setup though excites me as an android developer. If I am going to put my money for purchase and I have to choose between *equally* priced android and iphone, well, it's gonna be really tough call. Any thoughts?

I chose both: an iPhone and a Nexus One. iPhone is great for browsing the web, playing music and using beautiful apps like Tweetie or Tunein Radio, Nexus One is great for notifications, widgets, powerful applications, and custom firmware. IPhone is more polished and more reliable, but it has a lot of limitations and a closed architecture. Nexus One has a lot of hardware flaws (dual-touch screen, poor speaker, poor soft keys), it doesn't have a consistent user experience, but Android allows developers to build powerful apps that could even replace system components.

Even with the advent of Flash 10, will old flash run? Or is it another change that has to be made? Apple has always been a little odd in their view of computers and their technology. I do like their chipset though.

Apple may not be interested to share application space to others and Android might be more welcoming to all as an open source platform. But, the basic assumption made by Apple phones is mobile phones is a low power device and Flash falls short of all the basic standards such as open web standards and touch interfaces is more convincing to all. I would always go for iPhones and not Sell my mobile phone to any other person or institution to make money.