Difference: Ad Hoc distribution and Developmental distribution

alekhine picture alekhine · Mar 2, 2012 · Viewed 23.6k times · Source

I am in process of creating my first app and have some confusion over Ad Hoc provisioning profile and Development Provisioning profile. I understand that this question is asked before this but needed some clarification and confirmation.

Looking at previous answers on stackoverflow I assume there are following differences:

  1. Ad hoc builds can be installed without iTunes while development builds(.ipa) must be installed from iTunes

  2. Debugger cannot be attched to Ad hoc build while development build has debugger

  3. Device tokens are different as APNS uses two modes sandbox, production environments depending upon build is Ad hoc or developmental

And I have following questions

  1. On many forums it is written that there is limit of 100 users on Ad hoc builds but nothing is mentioned that if developmental builds have such limits. Also these limits of 100 users are per developer profile or per application?

  2. Also does only Ad hoc builds require UDIDs of device to get installed on them? what about developmental builds?

    Please see if I have got differences correctly, whether this misses any important difference and any information on questions will be of immense help

Answer

richerd picture richerd · Mar 3, 2012

Expanding on your comments

  1. Ad Hoc builds can be distributed and installed though iTunes, the X Code organizer or though the web. One service for managing adhoc builds and testing is Testflight (https://testflightapp.com/) check them out they have lots of resources regarding provision profiles,

  2. Normally your distribution builds are optimized with debugging information stripped, so yes you can not debug adhoc & distribution builds in the debugger.

  3. Your App ID is linked to APNS, so the certificate you generate is linked to your application. Device tokens on Sandbox and production are different.

To answer your questions

  1. for your iOS developer profile you're limited to 100 devices across the entire account. These are shared between applications. 100 devices means that you are allowed to register 100 devices per developer account per year. At the end of the year when you renew your account you can edit this list and reset your device quota.

  2. Both ad hoc builds and developer builds require your UDIDs. What happens is that the provision profile (development or adhoc) must match the provision profile that the app was signed against. Under development it's usually easiest to use a wildcard App ID (such as *) but when you are releasing (under ad hoc or app store distribution) you should use the full App ID name such as com.company.appname this is to identify your app under services such as In app purchases or Push notification services