Companies writing applications for Apple’s iPhone remain confused about whether their solutions run afoul of Apple’s terms, or whether it will even enforce them, according to third-party development organizations.
Apple updated its iPhone Developer Program License Agreement in June to give developers the option to embed integrated code into their applications, but in a limited way and only with Apple’s prior written consent.
The uncertainty remains in spite of the June license changes, according to Unity CEO and cofounder David Helgason. “The honest answer is that there is no clarity, and I’m not aware of anyone who is in possession of clarity,” he explained.
“When [the terms] were announced as a plan three months ago, clearly it said that a large section of games on the iPhone wouldn’t be allowed under those terms.”
In April, Apple modified the license to ban cross-compiled applications from its App Store. Apple specified that the iPhone SDK’s APIs must be used in the manner prescribed by Apple, and they cannot call private APIs.
Adobe’s Flash-to-iPhone cross-compiler, which is included in its Flash Professional CS5 release, was forbidden by the licensing terms.
The license also specified that iPhone applications must be originally written in C, C++, JavaScript or Objective-C. That left tools (including Novell’s MonoTouch, which brings .NET development to the iPhone, as well as Unity’s Unity 3D game authoring tool) in a state of uncertainty.
In the interim, Apple gave an indication that the terms may change or that it may not actually follow those rules or enforce them, Helgason added. “The updated terms,” he said, “grant permission in certain circumstances, but I’m not aware of anyone having that permission.”
Apple did not respond to a phone call requesting a response.
Some of the most popular iPhone games, including “Tap Tap Revenge” and “Angry Birds” are written using a high-level scripting language called Lua, which generates Objective-C applications, said Rhomobile CEO Adam Blum. “Apple is not trying to eliminate Lua.”
Rhomobile produces Rhodes, a framework for cross-platform smartphone development. Developers write controls in Rhodes using HTML and JavaScript; an API accesses native resources on each platform.
Rhomobile talks to Apple on a regular basis to ensure that its approach is compliant, Blum said. Apple has continued to allow frameworks that leverage Web development skills accepted in its terms of service, he added. “What they are trying to clarify is that despite the original wording, there are plenty of frameworks that are adding value to the Apple ecosystem.”
Tools such as MonoTouch and Unity 3D have the highest bar to being approved because they are not using CSS, HTML or JavaScript, Blum claimed.
Unity continues to ship its Unity iPhone tool for iPhone development, and as many as 15% of the most popular games on the platform, including some being promoted by Apple’s staff, are created using Unity’s products, Helgason said. “Apple hasn’t made any public statements about what is going on. Nobody knows for sure that I know of.”
Unity is working to implement a new product that uses C++ for scripting in case Apple bans its product’s use. “It would be a worse product, because scripting languages have merit,” Helgason said. “Apple hasn’t made public statements about what is going on.”
Novell customers continue to use MonoTouch to build applications for enterprise deployments, which do not require Apple’s approval, said vice president and Mono project leader Miguel de Icaza.