Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the difference between a Development Provisioning Profile and an Ad Hoc Provisioning Profile?

What is the difference between a development provisioning profile and an ad hoc provisioning profile?

Couldn't we always use the ad hoc profile for everything but the store?

like image 320
Bobby Bruckovnic Avatar asked May 12 '13 10:05

Bobby Bruckovnic


People also ask

What is an adhoc provisioning profile?

An ad hoc provisioning profile is a distribution provisioning profile that allows your app to be installed on designated devices and to use app services without the assistance of Xcode.

What is iOS app development provisioning profile?

A provisioning profile is a collection of digital entities that uniquely ties developers and devices to an authorized iPhone Development Team and enables a device to be used for testing. A Development Provisioning Profile must be installed on each device on which you wish to run your application code.

What is the difference between provisioning profile and certificate?

A provisioning profile specifies a Bundle Identifier, so the system knows which app the permission is for, a certificate, with the information who created the app, and it's defined in which ways the app can be distributed.

What is ad hoc certificate iOS?

The Ad-Hoc certificate allows you to build your app to run on a predetermined list of devices. There are a couple big caveats though: You need the UDID of every device you want the app to run on. The user needs to install the provisioning profile for the app as well as the device manually.


1 Answers

An ad-hoc provisioning profile is used later in the development process, particularly when you want to distribute your app to a small or medium size group of testers that are not included in the iOS developer program for your organization. An app deployed with an ad-hoc provisioning profile will be almost identical to the version you submit to the App Store (ie. it will need a distribution certificate for push notifications to work, etc.)

Of course you could add your QA team and betatesters to the organization and use a development provisioning profile, but this approach has many disadvantages:

  • You may end up with many development certificates, making it difficult to manage them.
  • You are giving your betatesters the right to compile and run the app on a device. (This is a extremely bad policy.)
  • You want to test your app in the closest possible environment to the App Store environment. Development environments, like running the app from Xcode, can masquerade some bugs that will show up when you publish your app.
like image 68
Daniel Martín Avatar answered Sep 25 '22 00:09

Daniel Martín