Preparing and Submitting an iOS 7 Application to the App Store

From Techotopia
Jump to: navigation, search
PreviousTable of ContentsNext
Configuring and Creating App Store Hosted Content for iOS 7 In-App PurchasesPromoting your iOS Apps using iAd Workbench


Learn SwiftUI and take your iOS Development to the Next Level
SwiftUI Essentials – iOS 16 Edition book is now available in Print ($39.99) and eBook ($29.99) editions. Learn more...

Buy Print Preview Book


Having developed an iOS 7 application the final step is to submit it to Apple’s App Store. Preparing and submitting an application is a multistep process details of which will be covered in this chapter.


Contents


Verifying the iOS Distribution Certificate

The chapter entitled Testing Apps on iOS 7 Devices with Xcode 5 covered the steps involved in generating signing certificates. In that chapter, both a development and distribution certificate were generated. Up until this point in the book, applications have been signed using the development certificate so that testing could be performed on physical iOS devices. Before an application can be submitted to the App Store, however, it must be signed using the distribution certificate. The presence of the distribution certificate may be verified from within the Xcode 5 Preferences settings.

With Xcode 5 running, select the Xcode -> Preferences… menu option and select the Accounts category from the toolbar of the resulting window. Assuming that Apple IDs have been configured as outlined in Testing Apps on iOS 7 Devices with Xcode 5, a list of one or more Apple IDs will be shown in the accounts panel as illustrated in Figure 88-1:


Xcode 5 accounts preferences.png

Figure 88-1


Select the Apple ID to be used to sign the application and click on the View Details button to display the list of signing identities and provisioning profiles associated with that ID:


Xcode 5 account signing identities.png

Figure 88-2


Under the Signing Identities heading, check that a valid signing identity is listed for iOS Distribution. If a valid distribution certificate is not listed, click on the + button and select iOS Distribution from the resulting menu. Xcode will then contact the developer portal and generate and download a new signing certificate suitable for use when signing applications for submission to the App Store.

Adding Icons and Launch Images to the Application

Before rebuilding the application for distribution it is important to ensure that launch images and app icons have been added to the application. The app icons are used to represent your application on the home screen, settings panel and search results on the device. Each of these categories requires a suitable icon in PNG format and formatted for a number of different dimensions. In addition, different variants of the icons will need to be added for retina and non-retina displays and depending on whether the application is for the iPhone or iPad (or both).

The launch images are displayed when an application is loading on the device. Once again the images must be in PNG format and provided in a variety of sizes to accommodate supported devices and screen resolutions.

Launch images and app icons are uploaded using the project settings screen of the application project within Xcode. To view these settings, load the project into Xcode and select the application target at the top of the project navigator panel. In the main panel, select the General tab and scroll down to the App Icons and Launch Images sections. By default, Xcode will look for the images within asset catalogs. Since, at this point, the images are not yet in an asset catalog, click on the Source menus and change these from AppIcon and LaunchImage to Do not use asset catalogs. Once these changes have been made it will be possible to begin uploading images.

Figure 88-3, for example, shows the settings for an application targeted for the iPhone device family after asset catalogs have been turned off:


Configuring app launch images in Xcode 5

Figure 88-3


For each image, the required dimensions are listed next to each image category. One way to add images is to click on the corresponding folder icon to the right of each line and, in the resulting panel, click on the Add Other… button and locate and select the image that matches the dimensions for that particular asset. For additional information on the role of each image, simply move the mouse pointer over the folder icon and wait for the information panel to appear. Once an image has been uploaded, it can be viewed by clicking on the eye icon that will appear next to the folder.

Rather than continue to add images using this approach, however, it is more efficient to migrate the images to an asset catalog. This is achieved by clicking on the Use Asset Catalog buttons. Once the images have been migrated to an asset catalog, it may be viewed by selecting the Images.xcassets file in the project navigator panel as illustrated in Figure 88-4. Assuming that both the lauch images and app icons have been migrated to the asset catalog, entries will be listed for both (named AppIcon and LaunchImage by default).


Xcode 5 image assets catalog

Figure 88-4


To add additional images, simply drag and drop the missing image files from a Finder window onto the corresponding placeholders in the asset catalog.

Learn SwiftUI and take your iOS Development to the Next Level
SwiftUI Essentials – iOS 16 Edition book is now available in Print ($39.99) and eBook ($29.99) editions. Learn more...

Buy Print Preview Book


Targeting 32-bit and 64-bit Architectures

With the introduction the iPhone 5s, apps can be built for both 32-bit and 64-bit processor architectures. In the event that you have written 64-bit compatible code, an application archive that targets both 32-bit and 64-bit architectures can be configured by selecting the Build Settings tab in the project settings panel and changing the Architectures setting for the application to Standard architectures (including 64-bit) as illustrated in Figure 88-5:


Configuring the build architecture in Xcode 5

Figure 88-5


If migrating an existing 32-bit application to 64-bit, an outline of the areas where code changes may be necessary is provided by Apple at:

https://developer.apple.com/library/etc/redirect/itms/CocoaTouch64BitGuide

Archiving the Application for Distribution

The application must now be rebuilt using the previously installed distribution profile. To generate the archive, select the Xcode Product -> Archive menu option. Note that if the Archive menu is disabled this is most likely because the a simulator option is currently selected as the run target in the Xcode toolbar. Changing this menu either to a connected device, or the generic iOS Device target option should enable the Archive option in Product menu.

Xcode will proceed to archive the application ready for submission. Once the process is complete the archive will be displayed in the Organizer window ready for upload and distribution:

An iOS App Archive Package in Xcode 5

Figure 88-6

Configuring the Application in iTunes Connect

Before an application can be submitted to the App Store for review it must first be configured in iTunes Connect. Enrollment in the Apple Developer program automatically results in the creation of an iTunes Connect account using the same login credentials. iTunes Connect is a portal where developers enter tax and payment information, input details about applications and track the status of those applications in terms of sales and revenues.

Access iTunes Connect by navigating to http://itunesconnect.apple.com in a web browser and entering your Apple Developer program login and password details.

First time users should click on the Contracts, Taxes and Banking link and work through the various tasks to accept Apple’s terms and conditions and to input appropriate tax and banking information for the receipt of sales revenue.

Once the administrative tasks are complete, select the Manage Your Apps link and click on the Add New App button to enter information about the application. Begin by entering a name for the application and SKU of your own creation. Also select the bundle seed that matches the application that has been prepared for upload in Xcode. Next, choose pricing information and specify an availability date before clicking on the Continue button. The remainder of the application configuration process involves specifying items such as the version name, application description and ratings and then uploading images and screen shots.

Once the application information has been specified and saved a summary screen will appear similar to the one illustrated in Figure 88-7:


The iTunes Connect Manage Your Apps screen

Figure 88-7


Click on the View Details button located beneath the application image and review the information for accuracy. Assuming that the information is correct click on the Ready to Upload Binary button, answer the question about cryptography and then click Save. The status of the application will now be listed as Waiting for Upload and you will receive an email message from Apple also notifying you of this fact.

Validating and Submitting the Application

To validate the application, return to the Archives page of the Xcode Organizer Window, make sure the application archive is selected and click on the Validate… button. Enter your iOS Developer program login credentials when prompted to do so. If more than one signing identity is configured within Xcode, select the desired identity from the menu. Xcode will connect to the iTunes Connect service and perform a validation check on the archived application. Xcode will report any errors identified during the validation process. Correct any reported errors, re-archive the application and validate it again. Repeat these steps until the validation passes.

Click on the Finish button to dismiss the panel. The application is now ready to be uploaded for App Store review.

Make sure the application archive is still selected and click on the Distribute… button. Enter your developer program login credentials when prompted, select the application and signing identity from the menu and proceed through the uploading process.

Once the upload is complete the application will automatically be submitted to Apple for review. Once the review is complete an email will arrive stating whether the application has been accepted or not. In the event that the application has been rejected, reasons for the rejection will be stated and the application may be resubmitted once these issues have been addressed.


Learn SwiftUI and take your iOS Development to the Next Level
SwiftUI Essentials – iOS 16 Edition book is now available in Print ($39.99) and eBook ($29.99) editions. Learn more...

Buy Print Preview Book



PreviousTable of ContentsNext
Configuring and Creating App Store Hosted Content for iOS 7 In-App PurchasesPromoting your iOS Apps using iAd Workbench