Change in iPhone developer terms puts Flash in crosshairs
By Nicholas Bonsack, Macworld
Now that a beta version of iPhone OS 4.0 and the corresponding developer tools have
been released to iPhone developers, there’s a new developer license agreement to go along with them. John Gruber of Daring Fireball noticed a drastic
change to section 3.3.1 of that agreement, which originally forbid
the use of private frameworks—or application programming interfaces (APIs)—and discouraged developers from using documented, public APIs in manner not approved by Apple. Now, it reads as follows.
With this change, Apple has amended its agreement so that software approved for the App Store has to be written in one of a select few, Apple-approved programming languages, all of which are supported by its Xcode developer tools.
That seems to put the forthcoming Adobe Flash CS5 square in the crosshairs. Flash CS5’s
Flash Packager for iPhone promised that developers could write applications in Flash and then build them for use on the iPhone OS.
This wasn’t just a feature in Flash CS5, this was the flagship feature—Adobe’s foot in the door to enable its wide stable of customers to create content on an extremely successful platform. It would have helped turn Flash into a cross-platform development environment for iPhone software and other platforms, assuming it’s actually capable of producing apps that are as snappy and responsive as Xcode’s.
But the new terms of 3.3.1 could have far-reaching complications. Extremely fine performance adjustments that can only be made in low-level assembly language appear to be off limits too. It also means that other languages like
Scheme are in jeopardy, and the future of
cross-platform environments like Unity look uncertain. (In a statement, Unity Technologies CEO David Helgason said the company has a great relationship with Apple and there was no indication that anything would change in their situation.)
Apple’s developer agreement forces developers to write high-quality applications that look and feel like Apple software. After all, Apple doesn’t want the iPad to look like any other tablet, or the iPhone to look like any other phone, and it certainly doesn’t want its customers to believe that its own products perform poorly as a result of third-party software or tools.
It seems unlikely that it would have come to this were it not for Adobe’s decision to proceed with Flash Packager despite
Apple’s lack of support for Flash on the iPhone OS. Apple owns the hardware, the most critical software, and the storefront: one way or another, every software company has to bend to the whims of the platform.
Adobe is a tools company, so it has to respect the platform—instead, it decided to work against Apple’s interests. For better or for worse, Apple now appears to have totally locked Flash out of the iPhone. As a result, developers may not see a viable alternative to Xcode or HTML5 for a very, very long time.