# Introduction to iOS Development

## Overview

In this guide, we'll walk you through everything you'll need to set up and submit your iOS app to the App Store. We'll show you how to get an Apple ID which will get you access to Xcode, make you part of the Apple Developer Program, set up a certificate signing request, get a distribution provisioning profile, then show you how to submit your app through Xcode.

Being an Apple Developer is 100% free, but to submit your app to the App Store you'll need to sign up for the iOS Development Program which will&nbsp;cost 99$ USD&nbsp;per membership year.

In this tutorial, we'll show you how to:

- Get an apple ID
- Download Xcode
- Enroll into the Apple Development program
- Create an iOS Development/Distibution Certificate
- Create an iOS Distribution Provisioning profile
- Create an App Archive
- Submit your&nbsp;app the&nbsp;App Store&nbsp;

# Introduction to iOS Development

## Becoming an Apple Developer

To become an Apple Developer you'll need an Apple ID. If you already have an Apple ID then you can skip ahead to the "Enroll as an Apple Developer" step below.&nbsp;If you don't have an Apple ID -&nbsp;no worries! Getting an Apple ID is easy. Create your Apple ID&nbsp;[here](https://secure2.store.apple.com/shop/sign_in?c=aHR0cDovL3d3dy5hcHBsZS5jb20vfDFhb3MyMjAwMjBjMWVjN2RhMGY2Nzk4MDZiYTBhNzIyZjQzZDJiMTY5ZDIz&r=SCDHYHP7CY4H9XK2H&s=aHR0cDovL3d3dy5hcHBsZS5jb20vfDFhb3MyMjAwMjBjMWVjN2RhMGY2Nzk4MDZiYTBhNzIyZjQzZDJiMTY5ZDIz "here").

![](https://cdn-learn.adafruit.com/assets/assets/000/034/238/medium800/projects_Screen_Shot_2016-07-08_at_5.02.09_PM.png?1469468478)

At this time you'll need to fill in a little information. They'll ask you for an email, password, and you'll need to fill in some security questions like "What's the name of your first pet?"

It's very important that you give them&nbsp;an email that you frequently use, because Apple always sends out updates of your app that you've submitted.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/239/medium800/projects_Screen_Shot_2016-06-30_at_5.17.07_PM.png?1469468532)

Congratulations - you now have an Apple ID.&nbsp;Good Job! We still have some work to do.

# Enroll as an Apple Developer

Now we need to enroll into the Apple Developer Program which will alow you to subit your apps to the App Store. &nbsp;Note: this next part of the process will require payment of $99 fee for a one year membership.

Creating an Apple ID automatically gives you access to the Apple Developer website.&nbsp;[Log in](https://developer.apple.com/account/) to the site here. There is a TON of information that you can access&nbsp;without even being registerd in&nbsp;the developer program. Check out the Documentation tab that's available on your profile page.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/240/medium800/projects_Screen_Shot_2016-07-25_at_10.03.45_AM.png?1469469901)

After getting familiar with the developer site, click on the "Join the Apple Developer Program" link located at the bottom of the screen.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/230/medium800/projects_Screen_Shot_2016-07-25_at_6.14.43_AM_copy.png?1469441890)

On the next page that loads, click on the "Enroll" button in the upper right corner.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/244/medium800/projects_Screen_Shot_2016-07-25_at_9.57.38_AM.png?1469470554)

The following page will let you know the&nbsp;difference in choosing to work as an Individual or as a Company.

Click on "Start Your Enrollment"

![](https://cdn-learn.adafruit.com/assets/assets/000/034/245/medium800/projects_Screen_Shot_2016-07-25_at_10.04.10_AM.png?1469470722)

Choose your Entity type, for this tutorial we'll be developing as an Individual.

Alright, you know the drill. You'll need to enter your information.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/246/medium800/projects_Screen_Shot_2016-07-25_at_10.04.24_AM.png?1469470811)

Now you'll need to agree to the terms. Make sure you check this out. Check the box, then click Continue.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/247/medium800/projects_Screen_Shot_2016-07-25_at_10.05.40_AM.png?1469470971)

Make sure your info is correct, then hit Continue.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/248/medium800/projects_Screen_Shot_2016-07-25_at_10.06.16_AM.png?1469471159)

Warning: 

![](https://cdn-learn.adafruit.com/assets/assets/000/034/249/medium800/projects_Screen_Shot_2016-07-25_at_2.32.55_PM.png?1469471593)

Ok, after clicking "Purchase" you'll need to sign in one last time ... I promise.

This is where you'll pay for your&nbsp;membership.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/251/medium800/projects_Screen_Shot_2016-07-25_at_10.06.27_AM.png?1469472051)

Answer some billing inquiries...

![](https://cdn-learn.adafruit.com/assets/assets/000/034/252/medium800/projects_Screen_Shot_2016-07-25_at_10.07.03_AM.png?1469472184)

Once you've finished all that, you're done! You should receive a confirmation email notifying you of your yearly membership. Congrats! Now you are able to submit your apps onto the Apple App Store!

![](https://cdn-learn.adafruit.com/assets/assets/000/034/253/medium800/projects_Screen_Shot_2016-07-25_at_2.47.40_PM.png?1469472586)

# Technical Support

Once your registered in the Developer Program,&nbsp;you can receive help from Apple Support Engineers. If something is going wrong with your code, they'll gladly give you a helping hand. But keep in mind that you are allowed 2 incidents per membership. So use these resources&nbsp;wisely!

![](https://cdn-learn.adafruit.com/assets/assets/000/034/304/medium800/projects_Screen_Shot_2016-07-15_at_2.18.50_PM.png?1469569488)

# Introduction to iOS Development

## Installing Xcode

![](https://cdn-learn.adafruit.com/assets/assets/000/033/677/medium800/projects_Screen_Shot_2016-07-08_at_2.36.17_PM.png?1468003117)

Xcode is an IDE which stands for Integrated Development Environment, here is where you’ll use editors, compilers and other tools to help you manifest your iOS Apps or Desktop applications.&nbsp;

With Xcode not only will you be able to create mobile applications, you're also able to make apps for your Mac computer. But to get started you'll only need a few things...

- First, you’ll need a Mac computer running OS X 10.11 (El Captain) or later.&nbsp;(Xcode is not compatible with Windows or Linux OS)
- It also requires 3.80 GB of space
- If you don't have a Mac computer, there are ways for you to still participate, you'll just need to be ... creative.&nbsp;

First thing first -&nbsp;head over to the App Store and&nbsp;download Xcode [here](https://itunes.apple.com/us/app/xcode/id497799835?mt=12).

Once you've downloaded Xcode, open it up and look around a bit. This [guide](https://developer.apple.com/library/prerelease/content/documentation/ToolsLanguages/Conceptual/Xcode_Overview/index.html#//apple_ref/doc/uid/TP40010215-CH24-SW1)&nbsp;will show you the basic interface of Xcode so you can get started right away!

# Welcome to Xcode!
Let's get started...&nbsp;

When you first launch Xcode, you may be asked to "Install Additional Components" - go ahead and say yes.

&nbsp;

Once Xcode has finished launching, select **Create a new Xcode project.**

![](https://cdn-learn.adafruit.com/assets/assets/000/033/948/medium800/projects_Screen_Shot_2016-07-15_at_2.32.33_PM.png?1468607590)

![](https://cdn-learn.adafruit.com/assets/assets/000/034/297/medium800/projects_Screen_Shot_2016-07-20_at_9.28.33_AM.png?1469566930)

For right now select **Single View Application** then&nbsp;click Next..

**Fun Fact:** Many&nbsp;apps you&nbsp;currently have use a single view, like the&nbsp;Weather app.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/336/medium800/projects_weather-400px.jpg?1469652342)

Now you'll need to add your App name.&nbsp;We'll just go with **Test App** &nbsp;for now.

**Organization Name** which will be your company name.

**Organization Identifier** - with this you can put almost anything you want. It just bundles together your info to give you a unique identifier.

Choose the programming language you are planning on using, **Universal Binary** and&nbsp;check all three boxes.

Then hit **Next**.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/299/medium800/projects_Screen_Shot_2016-07-20_at_9.36.00_AM.png?1469567017)

Now choose a place where you'd like to save your project.

If it isn't already checked, check off the **Create Git repository** &nbsp;option and then hit **Create**

**Note:** It's very useful to have a Git repository. If you are not familiar with Git, you can have a quick look at getting started&nbsp;here:&nbsp;[Learning Git](https://youtu.be/_Jmkvv_nKTE)

![](https://cdn-learn.adafruit.com/assets/assets/000/034/295/medium800/projects_Screen_Shot_2016-07-20_at_9.36.42_AM.png?1469566827)

Ok! That's it - you've now created your first Xcode project!

We won't get into the details of writing code for iOS here but you can find a number of resources online to help you get started.

# Introduction to iOS Development

## Getting your  Development & Distribution Certificate

In order for you to efficiently develop your apps, it's a good idea to have your prototype app on your actual device ... also how cool is it to see your functioning app on your mobile device?

In order for you to do this you'll need to have two Apple certificates. This is no problem. Go to your Account&nbsp;page on the [Apple Developer website&nbsp;](https://developer.apple.com)and&nbsp;you'll see a " **Certificates, IDs & Profiles**" tab. Click on it.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/271/medium800/projects_red_box1.png?1469520827)

# Development&nbsp;Certificate
Right now, we're going to gather two different things -&nbsp;a development and a distribution certificate.

On the **Certificates, IDs & Profiles** &nbsp;page, on your upper right you'll see a "+" button - click on it.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/511/medium800/projects_certplus.png?1470181338)

Now you should see this page. Choose **iOS App Development** &nbsp;under **Development&nbsp;** for your certificate type then click **Continue**

![](https://cdn-learn.adafruit.com/assets/assets/000/034/272/medium800/projects_Screen_Shot_2016-07-26_at_4.30.31_AM.png?1469521944)

Next page will be about creating a **Certificate Signing Request (CSR)**

![](https://cdn-learn.adafruit.com/assets/assets/000/034/514/medium800/projects_certplus.png?1470181624)

Now we need to generate a CSR with **Keychain Access**. Way up, on the upper right where your status bar is, you see a magnifying glass icon, this is **Spotlight**. Open **Spotlight** , then type in **Keychain Access** then open it up.&nbsp;

![](https://cdn-learn.adafruit.com/assets/assets/000/034/273/medium800/projects_Screen_Shot_2016-07-26_at_4.37.30_AM.png?1469522301)

Alternately you can go through the Finder search system

![](https://cdn-learn.adafruit.com/assets/assets/000/034/515/medium800/projects_Screen_Shot_2016-08-02_at_7.46.41_PM.png?1470181680)

When the program is open, Go to the drop down **Keychain Access menu \> Certificate Assistant \> Request a Certificate From a Certificate Authority**

![](https://cdn-learn.adafruit.com/assets/assets/000/034/516/medium800/projects_Screen_Shot_2016-08-02_at_7.48.24_PM.png?1470181732)

![](https://cdn-learn.adafruit.com/assets/assets/000/034/517/medium800/projects_Screen_Shot_2016-08-02_at_7.49.16_PM.png?1470181778)

You'll need to enter your e-mail address and name. Make sure you choose **Saved to disk** &nbsp;_not_ Emailed to the CA_&nbsp;_then click **Continue**

![](https://cdn-learn.adafruit.com/assets/assets/000/034/276/medium800/projects_Screen_Shot_2016-07-26_at_4.43.31_AM.png?1469522802)

You can save it anywhere on your computer, I choose the Desktop.

Great! Ok, now go back to you **Development** page at the CSR page you were at, then click **Continue** at the bottom of the page

![](https://cdn-learn.adafruit.com/assets/assets/000/034/518/medium800/projects_Screen_Shot_2016-08-02_at_7.51.14_PM.png?1470181888)

Alright, now you are going to find that CSR that we just got and upload it.

Hit **Choose File**...load it up and click **Continue**

![](https://cdn-learn.adafruit.com/assets/assets/000/034/278/medium800/projects_Screen_Shot_2016-07-26_at_4.53.32_AM.png?1469523247)

Alright, you should now see this page. Click **Download** &nbsp;then find the file (probably in your Downloads folder) and open it up by double-clicking. It should open up **Keychain Access**. If nothing happens, it was probably already added, if not and an **Add certificate** &nbsp;screen popped up for you, just click Add.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/519/medium800/projects_Screen_Shot_2016-08-02_at_7.52.51_PM.png?1470181989)

# Distribution Certificate

Now since we have a certificate for our development profile, now we need one for our distribution profile. We going to do this process again but this time it'll be much easier.&nbsp;Now, click on the **Add Another** &nbsp;button.&nbsp;

This time under **Production** &nbsp;choose **App Store and Ad Hoc**

![](https://cdn-learn.adafruit.com/assets/assets/000/034/279/medium800/projects_Screen_Shot_2016-07-26_at_5.17.21_AM.png?1469524667)

Continue on just like before, you can reuse your CSR file! Once you've gone through that process again, you're all done.

You can exit the **Keychain Access** screen.

# Introduction to iOS Development

## Registering your Device

Now we are going to register your iOS device for testing apps. This will let you test your apps on real hardware

Go to your main **Developer** page and into the **Certificates, Indentifiers & Profiles** subpage. Under the **Devices** &nbsp;tab, click **All,** &nbsp;then hit **+** &nbsp;in the up right corner.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/281/medium800/projects_Screen_Shot_2016-07-26_at_5.36.16_AM_copy.png?1469526293)

![](https://cdn-learn.adafruit.com/assets/assets/000/034/282/medium800/projects_Screen_Shot_2016-07-26_at_5.46.08_AM.png?1469526589)

# Enter your device&nbsp;name and UDID.

An easy way to get your device&nbsp;UDID is through&nbsp;iTunes. Make sure your device is connected to your computer, then in iTunes, go to your device summary. You should see **UDID:** &nbsp;

If you don't see the UDID, you may need to click on the&nbsp; **Serial Number**

The UDID is a crazy long set of numbers and letters. Copy that UDID number and paste it into the UDID field on the Registration page.

Choose and enter a name for your device.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/283/medium800/projects_Screen_Shot_2016-07-26_at_5.39.16_AM.png?1469527115)

![](https://cdn-learn.adafruit.com/assets/assets/000/034/284/medium800/projects_Screen_Shot_2016-07-26_at_5.47.26_AM_copy.png?1469527248)

At the bottom, click **Register.** Once you've done that, thats it! Your device is now registered and can be used for testing with your app.

Onward!

# Introduction to iOS Development

## Setting up your App ID

This step is SUPER easy!

Basically, every app needs a unique bundle identifier so that your app can be found out of the millions of apps in the App Store. The App ID is made up of 10 characters given to you by Apple as a prefix + an additional string of your choosing.

Ok, at the main&nbsp;page on the [Apple Developer Website](http://developer.apple.com), click on the **Certificates, IDs & Profiles** &nbsp;tab. Then click on the **App IDs** &nbsp;tab.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/285/medium800/projects_Screen_Shot_2016-07-26_at_1.30.09_PM.png?1469554442)

![](https://cdn-learn.adafruit.com/assets/assets/000/034/286/medium800/projects_Screen_Shot_2016-07-26_at_1.35.12_PM_copy.png?1469554783)

Above you'll see I already have a few App IDs. &nbsp;To create your first ID, click on the **+** button in the top right

![](https://cdn-learn.adafruit.com/assets/assets/000/034/520/medium800/projects_certplus.png?1470182948)

This is where you'll add your product or app name. After you enter your **App ID Description** name make sure that you choose **Explict App ID** also remember to use a reverse domain name string for this (It's recommended)

![](https://cdn-learn.adafruit.com/assets/assets/000/034/521/medium800/projects_appsuffx.png?1470183016)

You can use the default **App Services** (they're adjustable later) and **Continue** & **Register**. Once you're done with that, you can now proceed to creating development & distribution provisioning profiles.

# Introduction to iOS Development

## Creating Development & Distribution Provisioning Profiles

In order to distribute an app, there needs to be an individual, a group or company to claim ownership of it and that's where the **Distribution Certificate** and a **Development Certificate** will be needed. It's job is to&nbsp;authenticate and identify you as an individual or your team in a **Distribution Profile** to present your app to the app store.&nbsp;

![](https://cdn-learn.adafruit.com/assets/assets/000/033/793/medium800/projects_Screen_Shot_2016-07-13_at_1.31.49_PM.png?1468438983)

# Development&nbsp;Profile

Now we’re going to create a development&nbsp;provisioning profile.

You'll need a provisioning profile in order to release any content onto the Apple App Store. Addtional infomation on iOS Provisioning Profiles can be accessed [here](https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&sqi=2&ved=0ahUKEwirpp7SsPHNAhVFmh4KHR_WBRgQFggcMAA&url=https%3A%2F%2Fdeveloper.apple.com%2Flibrary%2Fios%2Fdocumentation%2Fides%2Fconceptual%2Fappdistributionguide%2FTestingYouriOSApp%2FTestingYouriOSApp.html&usg=AFQjCNGD2jF7O3BbV6FBdgmdVCgFXMI8mg&sig2=VQ9cfml1aFawVp6j8FbrhA&bvm=bv.126993452,d.dmo)&nbsp;once you've signed in to your Apple Developer Account.

Login to your [iOS Developer Portal](https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&sqi=2&ved=0ahUKEwjSmLf_kfHNAhWGOD4KHYj-AMoQFghAMAA&url=https%3A%2F%2Fdeveloper.apple.com%2Faccount%2F&usg=AFQjCNEYcjTv3BrprwaXyP9RlsLiIiEM-g&sig2=h5zS89SZdEbu8pVe97rf8g&bvm=bv.126993452,d.dmo)&nbsp;then click on the **Certificates, ID's &&nbsp;Profiles** tab (this should be your favorite page by now!)

![](https://cdn-learn.adafruit.com/assets/assets/000/033/952/medium800/projects_Screen_Shot_2016-07-15_at_3.17.10_PM.png?1468610449)

Once you're there, scroll down to "Provisioning Profiles", then click on **All**

![](https://cdn-learn.adafruit.com/assets/assets/000/033/818/medium800/projects_Screen_Shot_2016-07-13_at_6.40.26_PM.png?1468449676)

Click the **[+]** button&nbsp;to the right of the **Add iOS Provisioning Profiles** title.

On the next page,&nbsp;you'll choose your type of provisioning profile. Under **Development** , select **iOS App Development** , then hit **Continue**.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/307/medium800/projects_Screen_Shot_2016-07-27_at_2.54.39_AM.png?1469602588)

Next you'll be asked&nbsp;to select an App ID - choose the one you&nbsp;created in the previous step of this guide.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/522/medium800/projects_selectappid.png?1470183508)

Now select your **iOS Development Certificate** which we created previously. Then hit **Continue**.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/523/medium800/projects_selectcert.png?1470183565)

Next select your iOS device or devices which we registered earlier...

![](https://cdn-learn.adafruit.com/assets/assets/000/034/524/medium800/projects_selectdev.png?1470183605)

Now you'll need to choose a profile name. Something descriptive like - **My App Distribution&nbsp;Profile** should work. &nbsp;Next, hit **Continue**

![](https://cdn-learn.adafruit.com/assets/assets/000/034/525/medium800/projects_Screen_Shot_2016-07-13_at_3.28.46_PM_copy.png?1470183764)

It will be created, all you have to do is **Download** it

Now just hit the download button, then your **Development&nbsp;Provisioning Profile** will be downloaded to your hard drive. **Drag the downloaded file onto the Xcode's app icon to install it**. &nbsp;

Well done! Just one more profile to go…

# Distribution&nbsp;profile

To create your Distribution Provisioning Profile, follow the same steps as above but choose **App Store** Distribution as the profile type and name the profile as **My App Distribution Profile**. &nbsp;Remember, we need each type of profile to match its certificate.

![](https://cdn-learn.adafruit.com/assets/assets/000/033/817/medium800/projects_Screen_Shot_2016-07-13_at_5.40.08_PM.png?1468449521)

Go through the whole process including downloading and dragging the profile onto **XCode**

Once you have both your **Development** and **Distribution** provisioning profiles created, downloaded, and installed you're ready to move on to the next step.

# Introduction to iOS Development

## Testing your App

Before going farther into this guide, it'd be best for you to test your app on your device or Xcode's Simulator. Below we offer a free sample app for you to download and test.&nbsp;

[Adafruit.Test.2016.zip](https://cdn-learn.adafruit.com/assets/assets/000/034/800/original/Adafruit.Test.2016.zip?1471302333)
Download and unzip the sample app that we've provided above, then open up Xcode if it isn't open already, so we can get started. If you already have an app that you'd like to test, you can test that instead.

Once you've opened the app you've chosen within Xcode, locate your **Project navigator** then click on your&nbsp; **Root Project node** &nbsp;as seen below.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/654/medium800/projects_Root_projectv_node.jpg?1470851855)

Once you've selected the Root Project node **,** you should see a catagory called **Identity.&nbsp;** Make sure that your Bundle Identifier field is filled in with a unique bundle identifier name. If it's left blank you'll receive an&nbsp; **Invalid Argument&nbsp;** error when you start to run your app. Also if it's not already selected choose your account within the **Team** section.

Below that you'll see your **Development Info** catagory. Make sure you set&nbsp; **Deployment Target** &nbsp;to 9.3 or higher if available.

Ok, we are almost ready to build. Before we hit run we'll need to select our device in the **Device Scheme** thats located in the upper left area of the &nbsp;screen.

Once you've done that, hit the **Build** button that looks like a play button or hit&nbsp; **⌘R.**

![](https://cdn-learn.adafruit.com/assets/assets/000/034/655/medium800/projects_Screen_Shot_2016-08-10_at_2.22.09_PM_copy.jpg?1470853397)

Warning: 

Once you've hit the Build button, you should see the app display on your device.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/656/medium800/projects_image000001.jpg?1470853865)

You can do the same in **Simulator**. Instead of choosing your device in the **Scheme Chooser,** you can choose various iPad and iPhone versions that will run your app within **Simulator**. Once you've selected a device version hit **⌘R**.&nbsp;This will launch the simulator so you can try out the fancy new app and also take screenshots you'll need!

![](https://cdn-learn.adafruit.com/assets/assets/000/034/658/medium800/projects_Screen_Shot_2016-08-10_at_4.43.42_PM.png?1470861931)

Info: 

![](https://cdn-learn.adafruit.com/assets/assets/000/034/668/medium800/projects_test-app-in-simulator.jpg?1470961153)

Warning: 

# Introduction to iOS Development

## Getting your App ready for Distribution 

Now you'll need to manage your provisioning and distribution profiles within **Xcode**. Go to the Xcode drop-down menu and select **Preferences**.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/566/medium800/projects_Screen_Shot_2016-08-03_at_1.55.48_PM.png?1470248428)

While you're on the Preferences page click on the **Accounts** tab. Once you do that you'll need to add your **Apple ID**. At your bottom left you shoud see a **[+]** button - &nbsp;click on it and select " **Add Apple ID**"

![](https://cdn-learn.adafruit.com/assets/assets/000/034/568/medium800/projects_Screen_Shot_2016-08-03_at_1.56.15_PM.jpg?1470249021)

You'll need to add your&nbsp; **Apple ID** info here...

![](https://cdn-learn.adafruit.com/assets/assets/000/034/569/medium800/projects_Screen_Shot_2016-08-03_at_2.31.32_PM.png?1470249311)

Now that you've signed into your Apple ID, you'll need to download your provisioning profiles that we made earlier. On the same page click the " **View Details**..." button.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/570/medium800/projects_Screen_Shot_2016-08-03_at_2.39.40_PM.jpg?1470249755)

Here you can&nbsp;download your **Provisioning profiles** and **Signing Identities**. Click on the " **Create**"&nbsp;buttons next to your signing identities. If your account has any uninstalled provisioning profiles, you can download them&nbsp;individually or all together with the " **Download All**" button on the bottom left. Go ahead and click the " **Download All**" button then hit " **Done**" when you're finished.

Once you're done that, we'll be ready to submit your app to iTunes Connect.

&nbsp;

# Introduction to iOS Development

## Create an App listing in iTunes Connect

![](https://cdn-learn.adafruit.com/assets/assets/000/034/627/medium800/projects_Screen_Shot_2016-08-08_at_4.51.35_PM.png?1470689513)

You’ve seen the&nbsp; **Provisioning profile** page, but what is **iTunes Connect**? It’s a dashboard that allows you to manage your apps, view reports of your performance in the App Store, manage your contracts and more. When you enroll in the **iOS&nbsp;Developer Program** , you’ll have access to **iTunes Connect** as well.

Note that this is&nbsp;_not_ the Connect from within iTunes the app but rather the developer version available from when you log into your developer account!

![](https://cdn-learn.adafruit.com/assets/assets/000/033/953/medium800/projects_Screen_Shot_2016-07-15_at_3.02.00_PM.png?1468610544 What you see when you login to iTunes connect.)

First, click&nbsp;on&nbsp;" **My Apps**" in the upper left.

On the next screen, click the &nbsp;**[+]** button.

![](https://cdn-learn.adafruit.com/assets/assets/000/033/954/medium800/projects_Screen_Shot_2016-07-15_at_3.53.59_PM.png?1468612506)

From the&nbsp;drop down menu choose " **New App**".

Now you just need to enter your app information...

![](https://cdn-learn.adafruit.com/assets/assets/000/034/628/medium800/projects_Screen_Shot_2016-08-08_at_4.53.45_PM.png?1470689636)

Once your App information is entered, you'll be able to continue by clicking the " **Create**" button. Now the app detail screen will appear, here&nbsp;you'll need to add some more&nbsp;information.&nbsp;

Now that&nbsp;you've created your app listing, you'll be able to submit your app to the&nbsp; **App Store** &nbsp;via&nbsp; **Xcode**.

# Introduction to iOS Development

## Prepare & Submit your app through Xcode

This is the final step in the app development process. Here, you should double check all your information.&nbsp;

![](https://cdn-learn.adafruit.com/assets/assets/000/034/659/medium800/projects_Screen_Shot_2016-07-27_at_2.50.13_PM.jpg?1470944329)

After you've added your additional information, make sure you save it by clicking the&nbsp; **Save** &nbsp;button on your upper right.

Now proceed to the&nbsp; **Pricing and Availability** &nbsp;tab on your left. Here is where you'll choose how much you'll charge your customers. Don't forget to save when your progress when you're done!

# Preparing for submission to iTunes Connect
You'll need to make screenshots of your app which can be done using the iOS Simulator.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/662/medium800/projects_Screen_Shot_2016-08-11_at_3.51.25_PM.png?1470945194)

Info: 

Your next step requires you&nbsp;to have a&nbsp;description for your app and special keywords so that your app can be found in the **App Store**.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/661/medium800/projects_Screen_Shot_2016-08-11_at_3.44.36_PM.png?1470944905)

In **General App Infomation** you'll need to add your App icon. It must be **1024 by 1024 pixels** , any other size will not do.

In the **Copyright** field you can just add your company name or your name.

You'll also enter your address and contact info.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/663/medium800/projects_Screen_Shot_2016-08-11_at_3.56.45_PM.png?1470945524)

You'll need to add your contact info here again. This area is for the person reviewing your app, this way they'll know how to contact you. You can also leave a note for them.

Now you can use the **Version Release** to choose when you want your app to be released. You also have the option to release the app as soon as it's approved or at a specified date.

&nbsp;

![](https://cdn-learn.adafruit.com/assets/assets/000/034/327/medium800/projects_Screen_Shot_2016-07-27_at_4.12.24_PM.jpg?1469650564)

Now you need to upload your app from **Xcode** to **iTunes Connect**.

Info: 

Under the **Products** drop down menu in Xcode,&nbsp;select click on **Archive.**

![](https://cdn-learn.adafruit.com/assets/assets/000/034/300/medium800/projects_Screen_Shot_2016-07-19_at_4.21.12_PM_copy.png?1469567286)

This screen will pop up. Choose the app that you're planning to use, then Hit the **Upload to App Store...** &nbsp;button.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/301/medium800/projects_Screen_Shot_2016-07-20_at_8.30.12_AM.png?1469567330)

Choose your Development Team to use for provisioning...

![](https://cdn-learn.adafruit.com/assets/assets/000/034/302/medium800/projects_Screen_Shot_2016-07-20_at_8.30.53_AM.png?1469567385)

Now you can Upload your App to iTunes Connect.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/330/medium800/projects_Screen_Shot_2016-07-20_at_8.31.13_AM_copy.png?1469650716)

If we did everything correctly, we'll be able to upload the binary to finish the certification process. Once your upload is successful, head back to your App information page.

&nbsp;

Scroll down to your Build setting. Click **Select a Build before you submit your app**. Then select your Build.

![](https://cdn-learn.adafruit.com/assets/assets/000/034/666/medium800/projects_Screen_Shot_2016-08-11_at_5.42.35_PM.png?1470952014)

Info: 

![](https://cdn-learn.adafruit.com/assets/assets/000/034/665/medium800/projects_Screen_Shot_2016-08-11_at_5.37.42_PM.png?1470951992)

Now is a good time for you to double check your info and make sure you have everything Apple asked you for. Now go to the top of the page to save your progress.

When you're done getting things in order just hit " **Submit for Review**", kick your feet up and wait for Apple to review your App. The wait time varies, it can take a few days to a week or two. But after that if everything works out you'll have your own App in the Apple App Store. Great Job!

&nbsp;


## Related Guides

- [Icicle Crown with Pebble Pixels & WLED](https://learn.adafruit.com/icicle-crown-with-pebble-pixels-wled.md)
- [Maker Business & Manufacturing Software - Our Tips & Tricks](https://learn.adafruit.com/maker-business-manufacturing-software-our-tips-and-tricks.md)
- [Resistor Helper](https://learn.adafruit.com/papercraft-resistor-helper.md)
- [Mass AVR ISP Programmer](https://learn.adafruit.com/mass-avr-isp-programmer.md)
- [Programmable 12v Outdoor Cafe Lights](https://learn.adafruit.com/programmable-12v-outdoor-cafe-lights.md)
- [Print Your Own Circuit Boards](https://learn.adafruit.com/how-to-print-your-own-circuit-board.md)
- [DIY Pi 400 Keyboard Case](https://learn.adafruit.com/pc-keyboard-case.md)
- [iOS App Development Using Cordova](https://learn.adafruit.com/ios-app-development-using-cordova.md)
- [Furby 2012 Teardown](https://learn.adafruit.com/furby-2012-teardown.md)
- [DIY Decorative Resin Keycaps](https://learn.adafruit.com/diy-decorative-resin-keycaps.md)
- [iBook iPad Case](https://learn.adafruit.com/ibook-ipad-case.md)
- [ Understanding microSD and SD cards: speeds, markings and more](https://learn.adafruit.com/understanding-microsd-and-sd-cards-speeds-markings-and-more.md)
- [Accessing and Using Adafruit PCB Design Files](https://learn.adafruit.com/accessing-and-using-adafruit-pcb-design-files.md)
- [Installing IronOS on an MHP30 Mini Hot Plate (DEPRECATED)](https://learn.adafruit.com/installing-ironos-on-a-mhp30-mini-hotplate.md)
- [reef-pi Guide 3: Temperature Controller](https://learn.adafruit.com/reef-pi-guide-3-temperature-controller.md)
