iPhone App Store Approval Horror Stories?

I’m hearing good and bad rumours about Apple having inconsistent policies for iPhone app approvals. Could we get some facts now? If you have developed iPhone apps, can you share how the process worked for you.

If you have heard some horror stories (or know any links to blogs), could you share them?

I’d like to get some clarity and know more what are the facts.

Juuso Hietalahti


  1. We had a fast approval for AntBlox. As Fili and Thomas said, if you follow the guidelines, it appears to be not so hard to get approval for your game.

  2. Unfortunately you have to buy all the devices. You can get them on ebay very cheap: I saw an iphone for 50$ that had the case dented, no charger, no headphones and almost no battery time, but for development it’s ok, you’ll keep it all the time connected.
    An absolute must are iphone 2G or ipod 1’st gen, because they are the lowest in the series. If your game works on them, it will work on the others. Maybe an ipod 3’rd gen if you want to implement some shaders. All the companies are doing full-pass testing on all devices, but for indies testing on 2 different devices might be ok.
    From my experience, out of 8 games, just one didn’t get approved the first time. The other 7 passed very fast (less that a week some, less than 2 weeks the others). And just as Thomas said, all the rules are there, just respect them and you’re safe, don’t worry. Soooo… when are we going to play Dead Wake on iPhone? :D

  3. You basically have very very few rules when you do games. And like stated, if you do your own GUI (recommended) then its even less.

    All the rules can be read up front in the developer portal. Its things like
    – dont show buttons for functionality which doesnt exist on a certain device (e.g. vibration on/off button on early touch)
    – dont nerf the full version and put in tons of “not in demo” messages
    – etc

    Many people dont bother reading all the rules – and thus they think its Apple who are the shitheads when their app gets rejected. But all of it is stated up front – just go read.

    Sometimes it certainly leaves room for personal interpretation by the reviewers. But I’ve always found it to the point when they did reject an app by me

  4. Thanks Fili. Good points.

    Have you done many iphone apps, and is there any easy way to check the app on different machines (buy all the devices?) :)?

  5. The approval process is the last thing that should concern you when developing an iPhone game. Usually applications are rejected more often than games, because most of them are duplicating functionality or don’t have enough features to be called an application. Example: fart buttons. Another reason for app failing is using the iPhone UI in an inconsistent way: if you have a blue button for back and in another screen a black button for back you fail. If a button is present in more than one screen, it must be identical and in the same place.
    If you respect some simple rules for your game, like consistent interrupt response, no representations of the iPhone/iPod/iPad (although some games pass even when they contain images with the iPhone), and so on, you have a very good chance to pass. Also if you do your own UI (draw your own buttons, don’t use the standard ones in Cocoa) you skip a very long checklist that must be respected. Don’t forget to check for undocumented functions. As long as you are using the standard headers you are safe. Undocumented functions are the ones that you must declare before using (not exposed in the standard headers)
    Another thing that will bring you better reviews: test your game on all the devices that you can. Test on 1st gen iPod as well as iPhone 3GS. Also test on jailbroken devices because there are a lot of users that buy your game but have their phone jailbroken because they need another carrier or they like visual themes. Careful about the themes: some occupy more than 5-8 mb of ram, and your game might crash, bringing you bad reviews.
    If you need more details, just tell me.

Comments are closed.