Date: Monday, June 14th, 2010, 05:01
Category: iPhone, News, Software
Something about this reminds me of when the cool kids wanted to keep the nerds out of the clubhouse, if only on principle.
According to AppleOutsider, Apple has changed its iOS SDK rules for iPhone developers have relaxed the restriction of section 3.3.2 pertaining to interpreted code, enabling Apple to forbid Flash and other middleware platforms while still enabling popular game engines and libraries.
Apple’s goal seemed to be limited to stopping third parties from shifting iPhone developers from using Apple’s own Xcode development tools and instead making them dependent upon their own middleware meta-platforms.
The most obvious example of this was Adobe’s efforts to turn its Flash Professional CS5 application into a product that could export iPhone apps, facilitating cross platform development centered on Flash as a platform rather than Apple’s own Cocoa Touch.
Apple’s 3.3.2 restriction made it clear the company would refuse to sell such apps in its iTunes Store.
Strangely enough, the wording of the restriction appeared to also target any iOS apps that might include any interpreted code, including a large number of games that make use of general purpose, reusable code engines or libraries to expedite development.
Adobe has argued that any iOS restrictions on development with its Flash tools would also halt the use of popular game engines or libraries such as Unity 3D and Lua. Such a situation would imperil many popular iPhone games that Apple has already approved (and often singled out for targeted promotion), including Tap Tap Revenge and Rolando.
The latest modifications to the 3.3.2 section indicate Apple won’t be forced to dump popular, existing titles just to block middleware meta-platforms as a threat to iOS development. The most recent wording of the iOS SDK, published by Matt Drance of Apple Outsider, articulates an additional option Apple can invoke when choosing to approve apps:
“Notwithstanding the foregoing, with Apple’s prior written consent, an Application may use embedded interpreted code in a limited way if such use is solely for providing minor features or functionality that are consistent with the intended and advertised purpose of the Application.”
Drance notes, “these new terms seem to acknowledge that there’s a difference between an app that happens to have non-compiled code, and a meta-platform.”