When Apple released a new version of its iPhone developer program last week, it included new eligibility requirements that have serious implications for both advertisers and programmers. Adobe and Apple have been less than chummy
in recent months, but the content creation company has always maintained it would bring Flash to the iPhone one way or another—until today. As of now, Flash for the iPhone is dead.
Mark Chambers, Adobe's product manager for Flash, gave some insight
as to why on his personal blog. One of the sections of the iPhone developer agreement that's causing problems for a number of companies is 3.3.1, which essentially states that app developers are only allowed to use approved programming languages in approved ways without the use or function of any code that functions in a non-approved way (or that's written in a non-approved language.). Chambers writes that these new terms restrict "applications built with a number of technologies, including Unity, Titanium, MonoTouch, and Flash CS5. While it appears that Apple may selectively enforce the terms, it is our belief that Apple will enforce those terms as they apply to content created with Flash CS5."
He continues: "To be clear, during the entire development cycle of Flash CS5, the feature complied with Apple’s licensing terms. However, as developers for the iPhone have learned, if you want to develop for the iPhone you have to be prepared for Apple to reject or restrict your development at anytime, and for seemingly any reason."
The upcoming Unity 3 engine. Browser gaming is starting to look sexy.
We've talked about the Unity 3D
engine in the past, so we got in touch with the company after reading Chambers' remarks. It turns out Unity's CEO, David Helgason, recently wrote
about the new requirements and the company's response. From April 10:
This is certainly not the first time that developers of all types of apps have faced sometimes confusing changes in rules, or their interpretation. It’s a risk we all run in basing parts of our businesses on Apple. Here at Unity, we are working hard on getting good information, and working to understand whether – or how – the new changes could affect the developer community and others.
On April 14, Helgason added:
Unity learned of these changes with the rest of you just last Thursday and today, there remains a great deal of uncertainty about these changes being final and what we may need to do to comply. We’re meeting with Apple next week to discuss the matter, and our engineers have been discussing possible technical solutions as well...Though any uncertainly about Unity’s future on this platform is unpleasant, our feeling is that we’ll be okay.
Adobe's decision to focus on Android is far more significant for the future of mobile content delivery, but it's Unity's situation that's more troubling. Apple, after all, has made no secret of its dislike for Flash—but if you look at Unity's upcoming Unity 3
engine, or read over company blog posts, it's very clear that iPlatform support was high on the developer's list of priorities. As recently as March 9, Helgason wrote that Unity would add support for the iPad and was currently engaged in porting core assets to the iPhone. This is the sort of enthusiastic developer you'd think Apple might warn
before yanking out the rug.
If Chambers' comments about Flash's sudden non-compliance were specific to Adobe, that'd be one thing; the two companies aren't exactly on good terms these days. Unfortunately, they aren't. Hopefully the vast majority of developers will come out of this unscathed and Cupertino will make a few phone calls before dropping its licensing bombshell on world+dog the next time it makes a major update.