iPhone OS 4 Drops Wrapped ‘Flash’; In Support of Apple
iPhone OS version 4 has quickly gained recognition as being completely closed off to Adobe Flash in every shape and form. Developers are up in arms, Adobe apparently is planning on suing, and everything is generally unhappy. Well, almost. Here’s a few plain simple reason why — regardless if you’re a Flash apologist — it’s actually a smart move.
Here’s how it worked: traditionally, developers who were proficient in Flash had been able to write a program in Flash, and then ‘wrap’ it up in an iPhone-happy layer to make publishing the App to the Apple App Store quick and easy, and therefore not requiring Flash to actually be installed on the iPhone. This also facilitated quick cross-platforming distribution. But with the advent if iPhone OS 4, Apple has said you can’t do that anymore. They’ll reject any App that’s created this way. And there’s good reason why.
The main reason is because the latest and greatest APIs that are coming with iPhone 4 require ‘native’ iPhone apps to utilize them. And the biggest of all these API features is multitasking. When you wrap up a Flash application in an iPhone layer, the layer doesn’t exactly communicate with the rest of the iPhone OS, and according to Steve Jobs, applications like these pseudo-Flash hybrids prevent the advancement of the iPhone as a whole. The official quote?
“…intermediate layers between the platform and the developer ultimately produces sub-standard apps and hinders the progress of the platform.”
Apps that will use multitasking, apparently, will do some magical background code, but it’s guessed that the majority of the app won’t actually be running: only the parts necessary for what you’d want it to do when it’s off screen. You could imagine how Flash code buried inside that wrapper wouldn’t be able to get access to that ‘outside’ multitasking hook.
And here’s another thing: Cross platform development doesn’t always make the best apps. I’m sure there’s a few folks out there who cringe at the thought of loading up X11 on their OS X machines, or some Windows folk who hate installing GTK+. But if the geeky nature of iffy cross-platform computer apps don’t make for a good enough argument, please, consider the following:
Here’s an example VARs might not be familiar with, but their kids certainly might. The PS3 and XBOX 360 are arguably the two biggest competitors in the latest generation of high-tech video games. Here’s the thing; many developers want to capitalize on all the systems, so they create cross-platform versions of games to sell on each system. However, the PS3 SDK has been rumored to be a bit more difficult to work with (the PS3’s 7-core Cell CPU requires a different ‘code-writing style’) than the XBOX 360 SDK kit. Due to the XBOX 360 year-jump on the PS3, it’s resulted in the de-facto development from companies writing their game for the XBOX 360 first and then “porting” it over to the PS3. And the hallmark of this ‘laziness’ / ‘efficiency’ in development is a swath of graphically sub-par PS3 games — some with very poor speed and frame rates — despite the fact that the PS3’s hardware is newer and superior to the XBOX 360. Conversely, games developed exclusively for the PS3 are graphically superior and much more complex. A ‘natively’ developed PS3 game squeezes every ounce out of the PS3’s hardware and — Jobs would agree — doesn’t hinder the progress of the platform.
Obviously, it’s a bit more complicated than a layer of abstraction between Flash and iPhone OS, but the concept is the same.
My last point is pretty simple: Apple can do whatever they want. Whatever Adobe plans to throw at Apple in court won’t stand, in my opinion. It’s Apple’s device, it’s Apple’s playground, and it’s Apple’s App world. If devs don’t like it; tough. Apple is also notorious for telling people what they want, and what’s good for them. And a majority of the time, they’re right. Say what you want about Jobs’ tyrannical dictatorship across all products coming from Cupertino, but they’re doing something right.
Although Flash developers cry foul and complain that the App store will lose developers, revenue, and support; I say they may, but not nearly enough to put even a small dent in the App store. Apple isn’t stupid. They wouldn’t make such a ‘devastating’ move if they didn’t know the implications. They calculate everything down to the time they put on the iPad promo shots.
Some see this move as a certain win for Google and the Android marketplace, but — you have to realize — nothing has changed. There isn’t going to be a mass exodus to the Android platform because anyone doing cross-app platforming will continue to do it, just minus the iPhone. Plus, no one who was developing Flash-based games on iPhone hasn’t already considered Android. I believe there are very few Flash-only based developers who will simply boycott Apple on principle and not look for a way to still get their app on the iPhone.
And don’t tell me we’ll be missing out on great Android apps that’ll never make it to the iPhone. I have a Droid. Free-apps are sub-par at best, and quality paid apps are few and far between.
If Jobs says Flash will hinder the development of the iPhone, I believe him. Are we really going to let the iPhone drag behind because a couple of jerks like their iFart app?
I say to developers: look at your iPhone app and ask yourself — could this be better if it wasn’t in Flash?