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.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…