Telerik blogs

At long last - we've reached the end of our journey (at least, the journey through Apple's iOS developer certificates, app IDs, device identifiers and – now – provisioning profiles).

What are Provisioning Profiles?

A provisioning profile is a set of digital certificates which associates a developer, an app ID and device ID(s), and is deployed to a device in order to allow the application to be installed and run for testing/distribution. Apple allows you to creat three different types of provisioning profiles:

  • iOS App Development - used to install apps on test devices
  • Ad Hoc - creates a distribution profile to enable your app to be installed on a limited number of devices
  • App Store - creates a distribution profile for your app to be published to the App Store

Which One Should I Use?

The iOS App Development provision type is usually sufficient for your development/testing needs. You can use an Ad Hoc provisioning profile if you need to deploy your app to a limited number of devices for more extensive testing (for example - devices used by users that aren't developers on the project). And, of course, once you're ready to publish your app to the App Store, you'll be using an App Store provisioning profile.

Creating a Provisioning Profile

We've been covering the steps of creating your developer certificate, creating an App ID, adding device identifiers to your profile, etc. from the perspective of using the Icenium Extension for Visual Studio (as well as the iOS Developer portal). So, if we're developing hyrbid mobile apps using Icenium and Visual Studio together, where does a provisioning profile come in? We need to create a provisioning profile, and then import it using Visual Studio, by following these steps:

1.) First thing we need to do is go to the iOS developer portal and create a profile.

Log into the iOS portal and choose the "Certificates, Identifiers & Profiles" link at the top left:

On the next page, choose the "Provisioning Profiles" option near the bottom left:

Next you'll see a list of any provisioning profiles you have. Click the "plus" icon at the top right to create a new provisioning profile:

Choose a Provisioning Profile Type

The first thing you need to do is select the type of provisioning profile you need (see the above explanation for what the types are), and then click "Continue":

Next - select the App ID, and click "Continue":

Next - you'll be prompted to select the developer certificate to include in the provisioning profile. Select the certificate(s) and then click "Continue":

Now you need to select the device(s) you want included in the provisioning profile. If you want to be able to deploy your app to a device - it needs to be listed & selected here:

Now we're almost done! Enter a name for your provisioning profile and click "Generate":

Now that your provision profile has been generated, click the "Download" button and save the provisioning profile to your local machine:

2.) Import Your Provisioning Profile using Visual Studio

Importing the provisioning profile via Visual Studio is quite simple:

  • Launch Visual Studio, open the Icenium menu and choose "Options"
  • Once the options pane opens, click the "Import" button at the bottom right of the "iOS" tab
  • Browse to where you saved the provisioning profile (which we downloaded as part of Step 1), select it and click "Open".

The profile will now appear in the list of the provisioning profiles associated with your Icenium account. You can click chevron icon at the left to expand it. From there you'll be able to view the certificate and devices associated with the provisioning profile. See the series of screen shots in the gif below:

Congratulations! You've successfully navigated the process of creating and importing an iOS provisioning profile. Now you're ready to write your iOS app, and deploy it to an actual device for testing.

About the Author

Jim Cowart

Jim Cowart is an architect, developer, open source author, and overall web/hybrid mobile development geek. He is an active speaker and writer, with a passion for elevating developer knowledge of patterns and helpful frameworks. 


Comments are disabled in preview mode.