In case you were wondering what's up with getting xscreensaver into the app store...

Turns out, there was a critical bug and they were not being dicks about not approving it. It didn't actually run at all. Of course, this bug did not turn up in Debug builds, or Release builds -- only in Archive builds.

It took me a while to figure this out because their first rejection message made it sound like just one of the savers wouldn't launch. But no, it was all of them.

Turns out that you can't use CFBundleGetDataPointerForName on iOS to turn a string into a function pointer, even if your build options include "don't strip symbols". Apparently the process of doing an Archive build strips your executable whether you want it to or not.

So: Submitted on June 22, rejected on July 3 (11 days). Submitted on July 3, rejected on July 13 (10 days). Today is July 19, so I guess they'll next try it on July 30. Sigh.

Tags: , , , ,

9 Responses:

  1. Mike Hoye says:

    Not being an iOS dev, the more I read about your fighting with getting your own software into the App Store, the more the process bewilders me. It's all "What? But why would that... what is... what?" every time.

    • Lun Esex says:

      Ever hear about what it takes to do development for RIM BlackBerry OS? What I've read is the stuff of nightmares...

      Thing is, compared to a lot of previous mobile software development and distribution, the App Store was actually a big improvement. That the App Store now looks like those previous systems in comparison to what one would consider to now be modern and "sane" shows just how broken its predecessors were.

      Apple likes to be the ones who come around after something already exists, put their spin on it, and claim they "revolutionized" it (personal computers, GUIs, MP3 players, smart phones, tablets...) Someone needs to do that TO them WRT 3rd party developers and the App Store, to shake them out of their entrenched "it's not broken" attitude towards it.

      • jwb says:

        What? You download the completely free Blackberry SDK, write your crap, and load it on your phone and anybody elses' phones, and distribute the software via your own website whenever you feel like it. If you want to use certain APIs you pay $100 as a one-time fee to get a signing key, which you then use as you wish whenever you want.

        Whatever you've been told about this process is incorrect.

  2. James C. says:

    I don’t get why Archive builds are the ones in the store, but there’s a thing called a Release build which is not the one actually vended.

  3. They're not just doing it for money… They're doing it for a shit load of money!

  4. Pierre Lebeaupin says:

    Without commenting as to whether the process is broken or not, for those who are determined to live with it the application of a process thought up by Craig Hockenberry can avoid these kinds of it-works-in-relase-but-not-in-archive/distribution issues.

  5. Pierre Lebeaupin says:

    Gosh darn it, fumbled the link to http://furbo.org/2008/11/12/the-final-test/ , let's try again:

    Without commenting as to whether the process is broken or not, for those who are determined to live with it the application of a process thought up by Craig Hockenberry can avoid these kinds of it-works-in-relase-but-not-in-archive/distribution issues.

  6. Angry Dan says:

    This approval process would be a great candidate for another Apple patent if it weren't for the prior art demonstrated by Sisyphus.