Introduction

There are over 1.5 million apps on the Apple App store, and these have accumlated a total of 100 billion downloads since July 2008.

If your app is only on Google Play, you risk alienating users since the App Store is the main channel where users can get your app on iOS devices like the iPhone and iPad.

Getting your app on the App Store is a long and trick process, but once you're successful you open yourself up more than 500 million users who have active App Store accounts.

Let's get right into the guide so you can find out how to get your iOS app on the App Store.

Before submitting to app review:

Register for an Apple Developer account

The first thing you need to do is register for an Apple Developer account. If you already have an Apple account you just need to login, if not you will have to register to get an Apple ID

An Apple ID is your username for everything you do with Apple so check if you already have it. See if you have done any of these things which would mean you already have the ID number:

  • Shop on the iTunes store
  • Enable iCloud on all of your devices
  • Buy from Apple Online Store
  • Make a reservation at an Apple Retail Store
  • Access the Apple Support Website

If you already have the ID number Log In here. Alternatively create an account with Apple Developer.

Create app ID

There's two types of App IDs - Wildcard App ID and Explicit App ID.

Wildcard App ID can be used to install and build most apps, including the sample code projects provided in the iPhone Reference Library which is why it's recommended for most iPhone OS development. Wildcard App IDs are created by entering an asterisk at the end of the App ID string. 

Example:

  • ABCDE12345 is the Bundle Seed ID (generated by Apple)

  • * is the Bundle Identifier of the App ID. When you enter the Bundle Identifier in your Xcode project you need to replace the asterisk with an appropriate string using the reverse-DNS format

  • com.foocompany.* is the Bundle Identifier of the App ID and the Bundle Identifier in your Xcode project must start with ‘com.foocompany.’ and the asterisk can be replaced with a string of your choosing

Explicit App ID is required to enable certain iOS features such as In App Purchase and Apple Push Notification service in your applications. These IDs are created by entering a specific string in the identifier portion of your App ID. Explicit App ID restricts a provisioning profile to only allow the installation of one app

Example:

  • ABCDE12345 is the Bundle Seed ID (generated by Apple)

  • com.foocompany.appname is the App ID's Bundle Identifier and needs to be the same as your app’s Bundle Identifier

Sign in to iTunes Connect

iTunes Connect is a suite of web-based tools created for developers to submit and manage their apps for sale using the App Store or Mac App Store.

It organizes your:

  • Portfolio of store content
  • Documents
  • Contact information

That way you can easily find and add to the material. It also cellects status information, feedback and earnings that come from Apple allowing you to manage all your app sales progress from a single place.

To access it you simply need to log in using your Apple ID and Password.

Upload app to iTunes Connect

Upload your code signed and provisioned app to iTunes Connect.

This helps in two ways:

  1. It ensures you are the only one with access to the app's code base.
  2. It prevents an attacker from uploading a modified version of your app

Only someone with the private key for your distribution certificate can upload your app to iTunes Connect.

Ensure you test the exact same build of your app that you submit to the store.

See the regulations on Bitcode and test the variants that the App Store builds for you using TestFlight.

Click here for more information: Distributing Your App Using TestFlight (iOS, watchOS).

To upload your app to iTunes Connect

  1. In the Archives organizer, select the archive you want to upload, and click “Upload to App Store.”

  2. In the dialog that appears, choose a team from the pop-up menu and click Choose. If necessary, Xcode creates a distribution certificate and distribution provisioning profile for you. The name of the distribution provisioning profile begins with the text XC.

  3. In the dialog that appears, review the app, its entitlements, and provisioning profile.

  4. To include bitcode, ensure that “Include bitcode” is checked (bitcode is enabled by default).Apps you upload to iTunes Connect that contain bitcode will be compiled and linked on the App Store. Including bitcode allows the App Store to apply updates to your app without requiring you to create a new version and resubmit it to App Review.

  5. Click Submit. If a dialog appears stating that no application record can be found, click Done, create an app record in iTunes Connect, and repeat these steps.

  6. If issues are found, click Done and fix them before continuing.

  7. If no issues are found, click Submit to upload your app.

(Source: developer.apple.com)

Design your App Store product page

There are eight major components of an app's product page:

  1. App name
  2. Icons
  3. App previews
  4. Screenshots
  5. Description
  6. What's new
  7. Keywords
  8. Categories

Your app name should be carefully chosen and in line with these Apple recommendations:

"Choose a simple, memorable name that is easy to spell and hints at what your app does. Be distinctive — avoid names that use generic terms or are substantially similar to existing app names."

Also take into account that names over 23 characters may be truncated on iOS devices.

Your app icon should be distinctive enough for users to recognise without being told the app name. It should be legible in all required sizes, the full list of which can be found here.

An app preview demonstrates the features, functionality, and UI of your app in a short video that users can watch directly on the App Store. Keep it between 15 and 30 seconds, and only use footage directly from the app itself. More tips can be found here.

When no app preview is available the App Store default to show app screenshots. Apple recommends to:

"Add copy and graphic overlays only when you need to provide context for the images. Avoid framing your screenshots with Apple products, as they do not add value to your message and reduce the space available for your screenshots"

The ideal app description is concise, attention-grabbing and highlights the main features of the app in a list. Don't include pricing or keywords in your description copy.

The What's New section of your product page will show any updates, bug fixes or tweaks you have made to your app.

Your keywords are limited to 100 characters, so maximize this space by removing plural duplicates, category names and the word 'app'.

You also must remove:

  • unauthorized use of trademarked terms, celebrity names, and other protected words and phrases
  • terms that are not relevant to the app
  • competing app names
  • irrelevant, inappropriate, offensive, or objectionable terms

Below is a list of categories your app might fall under. You can pick a maximum of two, one main and one subcategory:

Set app ratings

Apple has a unique rating system for apps. It's essential you get this right, or your app will be delayed while the rating's accuracy is disputed.

Here's how Apple ratings translate as ESRB and PEGIs.

Verify Xcode project

If you find problems with your Xcode project at this stage, you must edit the build setting:

To edit a build setting

  1. In the project editor, select the project or target whose build setting you want to edit.

  2. At the top of the project editor, click Build Settings.

  3. Locate the build setting in the left column, or enter the name of the build setting in the search field in the upper-right corner.

  4. If some build settings don’t appear, click All.

  5. Set the value for the build setting in the right column.

Click here for more information.

(Source: developer.apple.com)

Review app metadata

To edit shared metadata while the app is live, there must be at least one platform in an editable state.

The field will show as highlighted until the changes are approved to go live on the App Store.

Clicking on the field name will allow you to view the current live information. Any changes made to shared metadata will automatically be reviewed with the next platform that is submitted for review.

Find out which fields can be edited at any time, and which cannot, click here.

(Source: developer.apple.com)

Conform to the Apple human interface guidelines

While more theoretical than practical, Apple's human interface guidelines make sure your app fits with Apple's 'vision' and doesn't make their devices look bad because of the software.

The guidelines are long and detailed, and can be found here.

(Source: developer.apple.com)

Conform to the Apple store guidelines

An exhaustive list of Apple's app guidelines can be found here.

(Source: developer.apple.com)

Beta test pre-release build

You should take the following steps to set up prerelease versions of your app for testing in iTunes Connect.

  1. If the app is new, create an iTunes Connect record for it. See Create an iTunes Connect Record for TestFlight Beta Testing.

  2. Generate a new App Store Distribution profile containing the beta entitlement to distribute builds via TestFlight.

  3. Upload a build for the app. See Uploading a Build for an App.

  4. Add App Description and What to Test to the build. This step is optional for releasing your builds to internal testers, but required when submitting your app to Beta App Review for external testing. See Add Metadata for your Prerelease App.

  5. Distribute the app to internal testers.

  6. Submit the app for Beta App Review, and distribute it to External users.

  7. Get feedback from your testers.

  8. Upload new builds as you develop them.

  9. When you are finished having users test prerelease versions of your app, submit the app for App Review or turn off testing. See Submitting the App to App Review or Finish Testing an App.

Submit to app review:

Choose a build

Since you can upload any number of builds, you must specify the exact version you want to submit for review.  

Only one build can be associated with the App Store version of the app you want to submit. The build, called the current build, is the one that will be submitted for App Review.

  1. Open the App Details page for the app, as described in Creating an iTunes Connect Record for an App.

  2. Under App Store, select the version for the platform you want to submit and scroll to the Build section.

  3. Click the plus sign to select a build. The plus sign appears only if you have uploaded builds and have not yet not selected a current build. If you have already selected a build, you can remove it if you want to select a new one. See Removing the Current Build.

(Source: developer.apple.com)

Verify app properties

App properties cannot be changed after you upload the app

Here's the list of what you need to check before submission:

  • iAd App Network
  • Game Center
  • iCloud display sets
  • App Store text and images (including those in additional languages)
  • Categories
  • Keywords
  • Rating
  • Optional app previews
  • Bundle ID
  • Version number (the App Store version number)
  • App sandbox information

(Source: developer.apple.com)

Check app size

According to Apple's official regulations:

:Your app’s total uncompressed size must be less than 4 billion bytes. Each executable file (app_name.app/app_name) must not exceed these limits:

  • For apps whose MinimumOSVersion is less than 7.0: maximum of 80MB for the total of all __TEXT sections in the binary.

  • For apps whose MinimumOSVersion is 7.0 or greater: maximum of 60MB per slice for the __TEXT section of each architecture slice in the binary."

Apple states that a large app size is never necessary as most data should be loaded dynamically.

(Source: developer.apple.com)

Check Cryptography and U.S. Export Compliance

You may be required to provide one or more of the following documents:

  • Encryption Registration approval from BIS

  • CCATS approval from BIS

  • French import declaration

For more information on BIS requirements for encryption, go to Bureau of Industry and Security Encryption webpage.

Every app must go through encryption review before it's approved.

(Source: developer.apple.com)

Comply with IDFA usage

IDFA stands for identification for advertisers.

Right before the submission process you will be presented with a questionnaire about whether your app uses the Advertising Identifier.

IDFA is similar to a cookie — it allows advertisers to know that a specific iPhone user is looking at a specific publication and can serve an ad targeting that user.

(Source: businessinsider.com

Submit the app

On the platform version page under App Store, click Submit for Review at the top right of the page.

Future upkeep:

Improve customer experience

Improving customer experience is a process, something which you can start doing once you get feedback from your users.

Feedback can come either through the App Store, or externally. Feedback from the app store is:

External feedback can come from any number of sources, like review blogs, Twitter and tests users submit to sites such as usertesting.com

(Source: usertesting.com & developer.apple.com)

Learn how to replace app with a new version

To update an app's build, find it on iTunes connect and upload a new build file. There are two important things to note here:

  1. You need to indicate what's new by updating the What's New section on your product page
  2. You need to indicate whether the previous version should be stored on iCloud for users who prefer it

(Source: developer.apple.com)

Review app analytics

App analytics are available through iTunes Connect. Sign in, and click the App analytics icon on your homepage.

Sources:

Sign up for a FREE account and
search thousands of checklists in our library.

Sign up for a FREE account and search thousands of checklists in our library.