iPhone OS 4.0 SDK limits dev compiler choice; Adobe Flash CS5 scuppered before launch

Steve Jobs made plenty of noise yesterday about the 1,500+ new APIs for iPhone OS developers to play with in OS 4.0, but its taken some SDK sifting to turn up some of the less impressive changes.  A section of the iPhone Developer Program License Agreement has been amended to not only deny access to private APIs but also prescribe which languages can be used to create apps: C, C++ and Objective-C.  The change means that developers looking to use the Adobe Flash to iPhone compiler in the upcoming Flash Professional CS5 release will have to think again, together with those already using MonoTouch and Appcelerator.

"3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited)."

The Flash to iPhone compiler has been Adobe's flagship feature in the imminent Flash Professional CS5 launch, and was being seen by many as the ideal way to work around Apple's ongoing reluctance – reiterated at the iPhone OS 4.0 event yesterday – to add native Flash support.  It's unclear at present how Apple will tell whether an app has been compiled in one of the now banned clients, though apparently the Flash to iPhone compiler does leave traces behind in the app bundle.

Apple has never exactly been the most flexible of companies when it comes to giving developers leeway, but this is being seen as a new leap in closing down avenues for coding.  Their motivation, it's suggested, is to prevent a third-party platform from becoming the de facto standard for programming apps not only for the iPhone but for cross-platform use; were that to happen, Apple could lose their own control over the developer community, and the iPhone OS would lose some of its appeal as a platform for which hundreds of thousands of apps were exclusively available.