I'm developing a iPhone app and need to send it to my client. In turn, my client will distribute it to many other people for end-user testing.
What kind of Provisioning Profile, Certificate, or Code Signing will accomplish this task? I've heard something about Ad Hoc certificates; is an Ad Hoc certificate relevant for this task?
You can create ad-hoc testing certificates. Your client won't be able to distribute it to "many other people" though. You'll have to know all their device UDIDs and you'll have to add them to your provisioning profile. Remember you can only add upto 100 devices to your account.
Note that Ad Hoc certificates are no longer used in the new Apple TestFlight. Testers are no longer added via UUID.
Test Flight builds now require an App Store Distribution Provisioning Profile. The portal does not allow UUIDs to be added to this type of provisioning profile.
Instead, add "Internal Testers" via iTunes Connect:
After adding a user, be sure to click on their name and flip the "Internal Tester" switch.
Then, go to
App > Prerelease > Internal Testers
and invite them to the build.Yes, at this point the Ad-Hoc distribution certificate is what you are looking for. 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:
To Create One: You add all the UDIDs for testing to iTunes Connect and then create a new ad-hoc distrubution profile and certificate. Build your app with the new certificate and the users should be good to go.
What I recommend: TestFlight
Testflight allows you to simplify this process immensely. You just build a normal debug IPA and then put it on TestFlight. They have their own global provisioning profile the users install and run the app with. It's as seamless as mass testing on iPhone can be (Granted, that's not a high bar).
Good luck :)