- Creating New Projects
- Building Hello World the Template Way
- Using the Simulator
- The Minimalist Hello World
- Converting Interface Builder Files to Their Objective-C Equivalents
- Using the Debugger
- Memory Management
- Recipe: Using Instruments to Detect Leaks
- Recipe: Using Instruments to Monitor Cached Object Allocations
- Analyzing Your Code
- Building for the iOS Device
- Detecting Simulator Builds with Compile-Time Checks
- Performing Runtime Compatibility Checks
- Pragma Marks
- Preparing for Distribution
- Over-the-Air Ad Hoc Distribution
- Submitting to the App Store
- Summary
Submitting to the App Store
To build your application in compliance with the App Store’s submission policies, it must be signed by a valid distribution provision profile using an active developer identity. The steps are very close to those you used to create an ad hoc distribution, but you have additional bookkeeping that you must perform.
Make sure you have at least one 512×512 PNG image on hand as well as at least one screenshot for the next few steps. If you’re still not ready with final art, you can upload placeholders and replace or delete them later as needed.
Start by visiting the iOS portal and register your application identifier in the App IDs tab of the portal. This takes just a second or two and requires a common name (for example, “Collage”) and the identifier (for example, com.sadun.Collage). This identifier should exactly match the one you use in Xcode. Even though you usually sign your app with a general wildcard provision, the application identifier you need for iTunes must be specific.
Head over to iTunes Connect (iTunesConnect.apple.com). Choose Manage Your Applications > Add New App > iOS App. Enter the application name (it must be unique), the SKU number (it’s up to you how you define this, but it must be unique to your account), and select your new identifier from the Bundle ID pop-up. Be as exact as possible on this screen and do not use placeholders during this step. Make very sure you select the proper identifier. Once set, it cannot be changed.
Enter all your metadata—it can all be placeholders here—and set your two images. iTunes Connect creates your new application page and adds a “Ready to Upload Binary” button. When you click that button and declare your export encryption compliance, you’re given instructions on how to upload your binary. Your application state changes from Ready to Upload to Waiting for Upload. Click Continue.
When you use placeholders in your iPhone metadata, you now have as much time as you need to edit that material. Just be sure you get your descriptions and art into shape before uploading your application from Xcode. Your upload kicks off the App Store review process. Do not waste Apple’s app reviewers’ time by uploading your app until it’s ready to be reviewed.
Finally, make sure you read Apple’s App Store submission guide, which walks you through the process and its guidelines, which help explain what apps are and are not suitable for the App Store.
When you are absolutely sure you’re ready to submit your application, follow these steps:
- Review your iTunes Connect metadata for clarity and correctness.
- Archive your application (Product > Archive).
- In the Organizer, click Submit.
- Enter your developer login credentials and click Next.
- Select your application from the top pop-up (see Figure 3-28). Only applications that are “Waiting for Upload” appear in this list.
Figure 3-28. Only apps that are “Waiting for Upload” are listed in the Organizer’s submission screen. Make sure your identity is not set to an ad hoc profile, also listed as iPhone Distribution. It’s a common error that lots of developers make.
- Select your distribution identity from bottom pop-up. Make sure it is your general distribution identity and not an ad hoc distribution one! This is a common mistake that usually results in an e-mail from iTunes asking you to re-submit your application after it fails the code-signing check. Click Next.
- Wait as Xcode validates and submits your application. When it is finished, the Status field next to your application name updates to match the status of your submission. Wait for an e-mail from iTunes saying that your application has changed state to Waiting for Review.
If you encounter any trouble uploading, you may want to clean your project and recompile from scratch. If you are unable to verify or submit your application, try re-installing Xcode. Sometimes when you install beta versions of the SDK on the same machine as your primary development Xcode SDK, those versions can overwrite the tools you need to properly submit your applications to iTunes Connect.