Skip to main content
May 10, 2011

Development profiles and Ad Hoc profiles

New iOS developers often find it confusing to navigate the iOS provisioning portal. Every iOS app needs to be built with a provisioning profile, which contains rules about which devices are allowed to run the app. We often see new developers confused about the difference between a Development profile and an Ad Hoc profile.

If you need to have your app tested by people, you normally use an Ad Hoc profile. This has specific UDIDs (Apple device IDs) in it, and your app will only run on those devices. Apple allows this so that you can test your app before you submit it to the App Store. In the iOS provisioning portal, when you select Provisioning there are two tabs, Development and Distribution. It is natural to think that since the app is in development mode, you would need a Development profile, but this is not the case. Development profiles are for debugging. Apple considers Ad Hoc to be a form of Distribution, so it is found under the Distribution tab.

Xcode will let you build your app with a Development profile, but if you send it to someone it is likely to fail to install on their device, which can be hard to debug. If you have an app that fails to install and you're not sure why, make sure that you built it with a Distribution profile.

Apperian

More from the Blog
Sep 19, 2018

Arr Matey, Hear a Tale about Cyber-Piracy

It’s Talk Like A Pirate Day.
Read more
Sep 18, 2018

The App Is The Endpoint

Traditional Endpoint Security is dead, that is to say that hardening the laptop, desktop, or device is not a panacea. ...
Read more
Aug 29, 2018

Using real-time threat analytics to thwart a serial app attacker

How Arxan helped shut down continuous reverse engineering attacks Operating in the Dark It started after releasing an app u ...
Read more