Tuesday, October 05, 2010

Flash, iOS, and Android: The Real Future of Flash as I See It

There was a lot of debate earlier in the year about the future of the Flash platform.  It was assumed that Flash would die a slow death because Apple had deliberately blocked Flash movies and files from running directly on their iOS platforms.  Arguments have been running back and forth between Flash developers, Apple haters, Android lovers, Apple zealots, and just about everyone that wants to add their voice to, in my opinion, a narrow-minded argument. 


Those that predicted the death of Flash didn't see the forest for the trees.  Sure, there are thousands of videos out there that were encoded in the Flash Player, and many of those videos are being ported to the MPEG 4 format.  Sure HTML 5 is able to perform many of the same tasks that Flash was able to do, as does PHP, Perl, Python, Ruby, and a number of other programming languages.  But the one thing that everyone didn't take into account was what Flash as a developing platform does:  takes content and packages it for distribution. 


So when Adobe announced the Packager for iPhone, it was pretty much lost in the news, until Apple said they wouldn't allow apps from the platform (or other similar platforms).  That was the case, until September 2010, when Apple changed their app submission restrictions, now allowing Flash to be used as a development platform, or even Adobe AIR. 


But how is this even possible?  Because of ActionScript 3, the programming language used by Adobe to give Flash it's flexibility, and Adobe AIR it's powerful platform environment.  One can code an app using Flash or Adobe AIR, and it becomes available for Android, the Desktop, and now the iOS platform. 


Why is this such a big deal?  Because one no longer needs to learn Java (Android and desktop) and Objective-C (iOS) to do the same thing.  You can write it all in ActionScript 3 and distribute it across the board with minimal changes for each iteration. 


It looks like the power of Flash is finally going beyond the browser, and into the native environment for your mobile devices.  No more worries about battery life or whether or not everything is supported:  it's all native, it all works within the platform.  I wouldn't be surprised if Adobe built in a packager for HTML 5 within Flash and AIR.  They have shown versatility necessary to keep their developer tools relevant in an increasingly mobile world. 


For future suggestions, perhaps a packager for Windows Phone 7 (assuming it pans out), Blackberry's new OS, and MeeGo for Nokia?  That would make Flash and Adobe AIR an extremely attractive mobile development platform.


No comments: