If you’re distributing apps for sale to end users, the process is fairly straightforward. You sign up for an iOS developer account, create a development provisioning profile, build your app and test it on devices set up for debugging, create a distribution provisioning profile, build and archive your app, and upload it to the store.
This model works well for consumer products developed by an individual or small group, but there are other ways to do things that will assist you when developing applications in the enterprise.
In a large organization, a lot of people may want to get their hands on your application before launch. Obviously, there’s your QA group, but also people from sales and marketing, internationalization, performance testing, and beta customers. Having them all come over to your desk to hook their devices up to your Mac and deploy the app with XCode can quickly become a nightmare. Toward the end of our 2.0 release, we had over 40 devices being used internally for testing.
The way to get around this is by using an Ad Hoc profile. An Ad Hoc signed app contains the UDID of every device that is allowed to run the application. Once a UDID is included in the app, you can send them the packaged IPA file, and they can drag it right into iTunes and install it to the device. Better yet, as you will see, we can automate the process so that they can directly download it from the build server. ...