In a surprise update, Apple has made significant changes to its developer agreement, coinciding with the release of OS 4.1. It would seem that Apple is in fact responding to widespread criticism of vague language and specific restrictions. I expect much will be made of what this means for Flash, but I think what’s more significant is that the agreement represents a step toward what many developers wanted. Apple’s app ecosystem is, by design, not as flexible as traditional desktop operating systems, and it falls short of some of what is possible on some competitors (Android, MeeGo). But it’s also a platform that continues to evolve and change, and given some of the platform’s unique strengths, those changes come as good news.
The other flipside – something really only relevant to music developers – is greater freedom in regards to Library access, which should continue to unlock DJ software possibilities.
A More Sensible Contract
Daring Fireball has an excellent run-down of the changes in the developer agreement:
License Agreement and New Review Guidelines
- Language bigotry is more or less gone. The widely-despised “Section 3.3.1” has been slashed, so that mention of specific programming languages or the vague “intermediary translation or compatibility layers” is gone. That should open up Flash’s cross-compiler, yes, but more important is that a vague reference that could mean practically anything has been removed, and that Apple has responded to feedback.
- Interpreter language (3.3.2) is clarified. If you really want script interpreters, platforms like Android remain a better choice; interpreted code is allowed (thanks to the editing of 3.3.1) but must be installed with the app. But better language here means less developer confusion, and – as the agreement now explicitly says – there’s always WebKit.
- Analytics are more open. Language apparently written to ban AdMob (which in turn prompted legal and regulatory pressure on Apple) is gone. You can collect analytics with user consent.
I actually strongly recommend reading Daring Fireball’s whole post; I don’t always agree with him, but I think author John Gruber is spot-on on this one.
Okay, so you’re reading the above news all over the Web. Here’s news exclusive to our audience.
New Library Access API in iOS 4.1
While not significant to as many developers, OS 4.1 is a big leap forward in terms of access to the music library. That’s going to be helpful to DJ apps, but also any music creation app that wants to store its audio assets on the device.
Gordon Childs, author of the DJ app Flare, writes with an update:
So your readers know their stuff and pretty quickly figured out that Flare on iOS 4.0 didn’t have “direct” access to the iPod Library samples and that in fact Flare was doing a lengthy and slightly clunky import.
iOS 4.1 finally resolves this situation with a new API class called AVAssetReader. Flare Scratch is the first DJ app (maybe the first overall app) on the AppStore to use this API.
So that means that local library files and iPod tracks are on a
fairly equal footing and that when the other apps catch up
you won’t have to waste space uploading the same tracks
over and over, nor deal with lame ad hoc WiFi upload schemes.
The only reason I haven’t yet pulled the built-in library in Flare Scratch is that some meta-data is not yet reliably reported via the new API, against which I have several bugs logged, so for example you can’t seamlessly loop an mp3 yet.
So, 4.0 was an improvement for music apps, 4.1 is way better and all we need now is multiple audio channels (i.e. via bluetooth) and you’ll have the perfect digital music device.
Below: a video demonstrates why this is cool.
And major kudos to Flare: they appear to be the first app to take advantage of this feature, shipping before even Apple’s own iMovie.
Good Times Ahead?
I’m personally gratified by this news. But part of what makes me and many developers excited is what’s happening in the larger landscape. I think some of the biggest advancements won’t come from any one platform – iOS or Android, to name the two most active for developers.
Competition and criticism is keeping platform vendors (Apple, Google and their partners) on their toes. Cross-platform development technologies continue to get more robust, so that some of the best work will be done between platforms. (I hope to talk more about that soon, as there are some technologies of specific interest to both Create Digital Music and Create Digital Motion.)
Nor are we just talking phones: bigger tablets, alongside or in place of laptops for performance, are part of the picture, too.
And because creative music apps push the envelopes of almost every aspect of these platforms – yes, far more than those fart apps – I think we stand to benefit the most from an innovative climate.