Some Changes Today With Apple App Store Guidelines

Apple loosened restrictions slightly with this morning’s announcement, but they didn’t go far enough.

We are continually trying to make the App Store even better. We have listened to our developers and taken much of their feedback to heart. Based on their input, today we are making some important changes to our iOS Developer Program license in sections 3.3.1, 3.3.2 and 3.3.9 to relax some restrictions we put in place earlier this year.

In particular, we are relaxing all restrictions on the development tools used to create iOS apps, as long as the resulting apps do not download any code. This should give developers the flexibility they want, while preserving the security we need.

In addition, for the first time we are publishing the App Store Review Guidelines to help developers understand how we review submitted apps. We hope it will make us more transparent and help our developers create even more successful apps for the App Store.

What this means is you can now author apps in whatever developer tools you want. Section 3.3.2 had said that no interpreted code may be downloaded or used in an app except for code run by an Apple-documented software program. Sounds like you will now also be able to run interpreted code in your application. Sounds also like not only can Adobe’s Flash Authoring tool be used to produce apps, but that your app can include a Flash runtime and can interpret and execute code in your SWF.

It will be interesting to see to what extent runtimes such as Flash will be allowed on iOS. Will Flash Professional continue to recompile code into native language, will they now produce an app that bundles the Flash runtime into each individual app, or will there somehow be a mechanism by which a shared Flash runtime can be used on the iOS? I imagine that Apple’s restrictions still don’t permit the later option.

This is a good move for developers but it falls short of allowing larger companies reign to innovate on top of the iOS platform. You will not, for example, be allowed to have an app that downloads an eBook that contains scripted, interactive content. See my previous post iPad an impediment to document innovation to understand what some of these issues are.

Of course the repercusions of this announcement extend beyond Flash. I hope it also means that we’ll be able to run MacRuby on iOS sometime in the next few months :-). Publishing the App Store review guidelines is big news as well. You actually have a chance now of knowing before you start writing your app whether it will be rejected. For instance, I am working on an app that contains ads, and I won’t use iAds. Apple now states that “apps that are designed predominantly for the display of ads will be rejected”, which means I should be okay.

In summary:

  • Removed restrictions on running interpreted code in your app
  • Did not remove restrictions on interpreted code within document formats
  • App Store guidelines are now published