As expected, this year’s Adobe MAX 2009 has had its twists.
One of the most brilliant new feature announcements this MAX:
Adobe Flash Professional CS5 will be able to create native iPhone applications!
Yes, you read that right!
Apple’s SDK terms prohibit the running of any runtime for executing custom code on the iPhone, and as such the Flash Player would need Apple’s special blessing in order to come to the iPhone. Despite much enthusiasm, this has not happened yet, and while Apple is adamant on keeping the iPhone a Flash-free zone, Adobe has now found a way for Flash developers to target the iPhone while adhering to the iPhone SDK license.
Using a new functionality to be available in Adobe Flash CS5, any Flash content will now support being exported as a native iPhone application. Flash CS5 will be able to compile Flash content into native ARM code which can run on the iPhone directly instead of running on the Flash runtime. By modifying a Low Level Virtual Machine (LLVM) compiler to understand ActionScript 3, and utilizing the LLVMs ARM backend, Adobe were able to publish Flash content directly as native iPhone application which run without interpretation.
Flash content created this way will be able to use features provided by Flash API, the Adobe AIR API and also the native iPhone API (although native iPhone controls etc. will not be available). In fact, Flash content can even use the Open GL ES. Among some of the functionality missing (quite possibly in order to adhere to the SDK license), is the embedded webkit browser functionality in AIR, RTMPE, Loading external SWF files with ActionScript, PixelBender Filters, Microphone and video camera access.
These application will also be able to use native iPhone functionality such as multi-touch, screen orientation detection, accelerometer input, geo-location, copy/paste etc.
Unfortunately the iPhone browser will still remain a Flash-free zone, since the runtime will not be available. This is still good news though, especially for developers, since now you can have Flash content running on every major smartphone platform: Android, Symbian S60, Palm webOS, Apple iPhone, and Microsoft Windows Mobile!
Source: Adobe DevNet
Sample iPhone apps built using Flash