My App finally was shipped: http://itunes.apple.com/app/weiqi2go/id543435551?mt=8
Following are lessons I learnt over the final stage:
1) I developer-rejected my submission close to a dozen times for the issues around network reachability, here first you need to be able to detect whether network is available, second you need to be able handle very slow 2G network. and one key point here is you should never use synchronous network calls instead make async calls and always set a time out.
2) Test, test, test and perhaps seek help from profesisonal testers. Ideally write up the functional requirements and/or user guide before testing, they will make tester life easier and helps have all points checked.
3) Prepare videos along the way for marketing the app down the road-as most app review sites such as 148apps requires you to provide videos. I also found shooting such videos is quite helpful to your QA effort. And if you want to put your video on YouTube, remember to limit you video under 100M, YouTube will remove your upload if it is "TOO LONG".
4) Keywords, The English App Store allows 100 character max keywords, you can NOT changed after the app released until you add another version, pick them carefully and make sure all your audience are covered if you got a global audience, at first while I had keyword "baduk"(korean name of Go), I didn't put in its korean spelling "바둑"-I wonder which one Koreans would use to search App Store, best way for sure is to include both keywords so no matter which keyword these international audience use they will always find your app!
P.S. despite I developer-rejected my submissions some 10 times, the time my last submission spent in the 'Wait For Review" queue was 10 days exactly the average, unlike what some people wrote in a blog, saying if you rejected you app many times you will have to wait even longer than normal-that blog article for sure added me some additional stress during my wait.