I like to slowly build up some sort of template/check list which I can follow and gradually improve on every future projects to make sure I don't miss anything important and sort of maintain a standard for the quality of work.
Things I can think of at the moment listed as below, will keep updating this list:
1. Handle device rotation properly
2. Test for memory leak
3. Handle different devices correctly - including icon, launch image, size of sprite, screen resolution, ...etc
4. Save game state/data on different scenario
5. with sound/audio
6. proper menu/high score
8. [future] Game center support if applicable
9. [future] test in real device, not just simulator
This is definitely not a simple task....