Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

iTunes App Store Submission Process


Published on

Published in: Technology
  • These are one of the best companies for review articles. High quality with cheap rates. ⇒⇒⇒ ⇐⇐⇐ I highly recommend it :)
    Are you sure you want to  Yes  No
    Your message goes here
  • You can try to use this service ⇒ ⇐ I have used it several times in college and was absolutely satisfied with the result.
    Are you sure you want to  Yes  No
    Your message goes here
  • If you’re looking for a great essay service then you should check out ⇒ ⇐. A friend of mine asked them to write a whole dissertation for him and he said it turned out great! Afterwards I also ordered an essay from them and I was very happy with the work I got too.
    Are you sure you want to  Yes  No
    Your message goes here
  • I pasted a website that might be helpful to you: Good luck!
    Are you sure you want to  Yes  No
    Your message goes here
  • Celebrated pianist Scott Henderson says: "I am thoroughly impressed by the system's ability to multiply your investment! ■■■
    Are you sure you want to  Yes  No
    Your message goes here

iTunes App Store Submission Process

  1. 1. Evan Kirchhoff Senior Software Engineer Ansca Mobile iPhone Provisioning Portal setup and App Store submission iOS 4.0 Development Training Camp Hacker Dojo, Mountain View, California August 7, 2010
  2. 2. Today’s topics: Setting up the Provisioning Portal Preparing your App Store submission The review/rejection process Increasing your app sales Some cool tech demos with Corona
  3. 3. Mobile development before the iPhone
  4. 4. 2006: Carriers ruled the world
  5. 5. Carriers controlled the interface The app buying experience was poor...
  6. 6. App testing was complicated and expensive In this example, the mandatory test fees were $800 per app per device model; test failure over trivial technicalities was very common
  7. 7. Other people got most of the money Other People You Other People You 25% 30% 70% 75% Then Now
  8. 8. Secretive, mysterious and sometimes frustrating ...but we love them anyway.
  9. 9. Using the iPhone Provisioning Portal It seems hard because it is
  10. 10. Log into your iPhone developer account and start here:
  11. 11. First-time setup Do all steps in one session for best results Work down the left-hand menu, and create at least one of everything
  12. 12. The first step is to create one of these
  13. 13. Use Keychain Access (on your Mac) to create a certificate
  14. 14. Use Keychain Access (on your Mac) to create a certificate
  15. 15. Use Keychain Access (on your Mac) to create a certificate
  16. 16. Save the Certificate Signing Request file This is the file to upload to the Provisioning Portal
  17. 17. Upload the file here and click “Submit”
  18. 18. Whenever you see “Pending”, hit refresh in your browser
  19. 19. Now click the “Download” button... ...then double-click the certificate file to install in your Mac keychain
  20. 20. (The process is the same for App Store Distribution certificates)
  21. 21. Now add test devices using their hardware Device IDs. You can register up to 100 devices per developer account (per year)
  22. 22. Use Xcode Organizer to get the Device ID Connect your device, then go to Xcode > Window > Organizer
  23. 23. Using a wildcard “*” identifier is easiest at first...
  24. 24. ...but you’ll need to generate app-specific IDs if you want to use Apple services like Push Notification, In-App Purchase or Game Center
  25. 25. Provisioning Profiles: three types 1. Developer - for debugging (expires in 3 months) 2. Distribution (ad hoc) - for beta testers, using one of your 100 devices (expires in 1 year) 3. Distribution (App Store) - for shipping your final app to the store
  26. 26. What are Provisioning Profiles? Provisioning Profiles bring everything together: They associate certificates, AppIDs, and devices (They must also be installed on the test devices; either Xcode Organizer or iTunes can be used for this)
  27. 27. Provisioning Profiles bring everything together:
  28. 28. “Distribution” Profiles come in two flavors: (we did this earlier)
  29. 29. “App Store” Distribution Profiles don’t allow device selection (and won’t run on devices)
  30. 30. Download the .mobileprovision files Then double-click to install on your Mac
  31. 31. The files will end up here: For best results, delete the ones you aren’t using!
  32. 32. Submitting to the App Store This part is easier
  33. 33. Be sure to use your App Store distribution profile (If you build using Corona, you’ll won’t see this screen)
  34. 34. To submit your app (Only available at sufficient account privileges!)
  35. 35. If there’s a name you really need, get it while you can! Note that the iPhone will only display names up to 12 characters without shortening them with “...” (It’s possible to use a long name in the store, and set a shorter display name in Info.plist)
  36. 36. What date to choose? Your release won’t happen before this date, but may occur unpredictably after it! Some people change this date each night to tomorrow’s date, during their review period, to try and optimize their initial placement on the App Store’s recent-releases lists
  37. 37. Pick your price
  38. 38. Gather all this information before starting your submission Description field no longer indexed for iTunes app searches (due to rampant keyword-stuffing in this field) 100-character maximum (eliminate spaces to make room for more keywords) “Copyright” field can be whatever you want to show in the store as the author/company App Store reviewers will want to inspect all parts of your app, so include test passwords if necessary
  39. 39. Your calculated content rating determines the parental filtering of your app
  40. 40. The last two are a trick question... Oops!
  41. 41. This large icon must look basically the same as your app icon (it’s safest to be exactly the same) You get up to 5 screenshots - use them all! Use PNG files for best results
  42. 42. “Screenshots” don’t need to be literal screenshots!
  43. 43. Now you are ready to upload the app itself...
  44. 44. Download “Application Loader”
  45. 45. Now click here
  46. 46. You will most likely answer “No” to this!
  47. 47. You must run Application Loader to upload your app But it is actually helpful!
  48. 48. You must run Application Loader to upload your app Zip your final app file before uploading
  49. 49. If using Xcode, the release build file can be found in [Project folder] > build > Release-iphoneos (If using Corona, simply click the “Show in Finder” button after building) Right-click this .app file and choose “Compress” to zip it
  50. 50. Application Loader finds common build problems This saves a lot of time, compared to the App Store rejections that would have happened otherwise!
  51. 51. After the upload “Waiting for Review” (USUALLY A FEW BUSINESS DAYS) “In Review” (ANOTHER 3-5 BUSINESS DAYS) “Requiring “Ready for Sale!” unexpected additional (CONGRATULATIONS!) Your app will appear on the time for review” store within an hour or so. (OH NO - THE DREADED APP LIMBO) Some apps get stuck here for weeks or months...experiences vary widely
  52. 52. What happens during review? Automated scanning for private Apple APIs Some kind of human judgement regarding “inappropriate” app content A little bit of intellectual property monitoring (seems hit or miss) Actual human testing of the app (seems to be about 5 minutes on average, mostly checking for crashes, major style violations, or obvious behavior problems)
  53. 53. What if they reject your app? Usually they’ll give you a reason:
  54. 54. But some rejections are unpredictable!
  55. 55. Congratulations, you’re in the App Store! Now what?
  56. 56. You have 5 friends with iPhones: call them now! You really want to get out of “No Ratings” status quickly, but that requires at least 5 ratings (no written reviews needed, just the ratings!)
  57. 57. Try to get reviews from your happy customers
  58. 58. Ratings totals are a rough proxy for sales totals ...and the multiplier may be around 100x (!) Obviously a very rough estimate, but seems correct to within an order of magnitude
  59. 59. Use your app to cross-promote your other apps This button links to an App Store search by company name
  60. 60. Use Facebook, Twitter or social gaming networks (e.g., OpenFeint, or Apple’s Game Center)
  61. 61. Some kind of promotional website is a good idea... Canabalt features the fully playable game on its website for free, yet sold very well on iPhone at $2.99! (Also note that you can use iTunes affiliate links to get a 5% revenue bonus)
  62. 62. App review websites ? Without naming names, there may be a “pay to play” aspect in some cases Some developers boycott paid review sites; it’s your choice* *Personal view: “All’s fair in love, war, and search engine optimization”
  63. 63. You could also try advertising ! The apps market is still so young that virtually no real advertising takes place! (This will presumably change as app budgets increase)
  64. 64. Use these to give free apps to friends or reviewers. You can get 50 codes per app version.
  65. 65. Promo codes are redeemed in iTunes: They expire quickly - don’t generate too many at once!
  66. 66. With 225,000 apps, isn’t the App Store “full”? Was the web “full” in 1994? (Note 1994 Yahoo interface very similar to today’s App Store!)
  67. 67. App Submission case studies (all information anecdotal) ABC Animals Pad Racers 420 Reminder
  68. 68. What does Ansca Mobile offer developers?
  69. 69. Corona SDK December 2009 Corona Game Edition July 2010
  70. 70. What is Corona? OpenGL accelerated graphics engine Develop mobile apps using a small scripting language (Lua) rather than C++, Objective-C or Java Cross-platform development: iPhone, iPad, Android from the same source
  71. 71. The Lua language
  72. 72. What is Game Edition? Physics engine included (Box2D) Animated sprites & “sprite sheets” Social gaming features
  73. 73. Corona SDK + Corona Game Edition all previous features, plus: * Full Lua scripting language * Hardware-accelerated graphics * Improved texture memory handling * GPS, compass, accelerometer * Animated sprites with independent * Networking (TCP, FTP, HTTP, etc.) framerates per sprite sequence * Camera and photo library * 2D physics simulation * Video playback (streaming or local) * Simple and complex physical bodies * Audio (sound effects or MP3) * Physical properties (mass, friction, * Animation and transition libraries bounce) * Vector drawing APIs (shapes and lines) * Joints, wheels, hinges, pulleys, etc. * Native UI (keyboard, etc.) * Collision detection, including pre- and * WebKit browser views post-collision events * SQLite database * OpenFeint game network support * File read/write * (more social features TBA) * Crypto (md4, md5, sha1, sha512, etc.) * Facebook and Twitter libraries
  74. 74. What can you make? (These are not Corona, but represent the target market for Game Edition)
  75. 75. What can you make? (Made in Corona Game Edition and shipped to the iPad App Store recently)
  76. 76. How does Corona work? Native Engine: C, C++, Objective-C, OpenGL Exposed Scripting: Lua Lua is designed as an embedded language (Very small, very fast, runs alongside native code)
  77. 77. Now is the time where we show tech demos