views:

80

answers:

6

Hi All, Im just wrapping up my first iphone app and getting it ready to send away to apple to be approved for the App store. Im just wondering if anyone can give me tips on what they really look at and what I should do before i send it to them for approval.

Thanks

+1  A: 
  1. Don't use unpublished system interfaces
  2. Make sure your app doesn't crash
  3. Don't do anything underhanded with user's personal data
Stephen Canon
+1  A: 

Make sure it works. Also make sure you aren't using any private APIs. That is, functions/variables that aren't documented by Apple. There is a good link on Apple's developer site for other stuff to look for (icon images and etc) before you submit.

Jesse Naugher
Also don't give your methods and classes the same name as undocumented ones. (prefixes are your friend)
Brad Smith
+2  A: 
  • DON'T use private API's
  • DON'T use middle tier frameworks such as a full interpreted language
  • Use default icons when you can with the built in types to buttons because they WILL bother you with it
  • READ and USE Human Interface Guidelines by Apple

and of course:

  • DON'T use porn/violence
  • DON'T use Steve Jobs pictures
Rui
Pulling data over webservices isnt an issue?
Raven
If it was a problem, apps that access facebook or twitter won't even exist
klez
+1 for HIG reference.
chpwn
Webservices are no issue as far as I can tell, I've using Posterous api and until now I got no negative on that.The important thing here is that iPhone works because it has expected functionality; HIG is important because if you wan't to take part of the app ecosystem you better take pride in that and do it the Apple way. Too many sub-standard apps out there. Do your best, take your time to debug, make it non crash-able and amazing and worth the download.Go for Quality. Ignore the "Duck App's" Hype.
Rui
A: 

Good suggestions already given. I would add the suggestion to check for memory leaks and excessive CPU usage using Instruments.

mvexel
+1  A: 

I've found this (non-exhaustive) list on an Italian magazine (Io Programmo)

The application doesn't have to:

  • Crash
  • Customize standard visual components so that their behaviour is not intuitive or semantically different from the default behaviour
  • Use icons with a misleading meaning or use SDK icons in a misleading way
  • Don't show alerts with, for example, UIAlertView for unexpected situation (i.e. broken internet connection when the app is running)
  • Don't notify the user on missing or not accessible hardware components (for example the GPS)
  • Use different icons on the AppStore and inside the application
  • Support device rotations without re-organizing the layout

In few words, read carefully the Human Interface Guidelines provided with the XCode documentation

klez
A: 

Run the ObjectAlloc tool and make sure your app doesn't keep using more memory over time (on the device).

Kendall Helmstetter Gelner