From Alex Edelman:
After a long app development cycle, it's generally wise to do a few rounds of testing before releasing an app to the public. In the case of iOS apps, the distribution options Apple provides leave something to be desired: Ad Hoc distribution is suitable for testing, but it requires a modicum of technical ability beyond the App Store-based installation process that iOS users are accustomed to.
As we were developing mobile apps here at Handshake, we stumbled upon TestFlight, a service that makes app distribution for testing simpler for developers and testers. Here's what you'll need to use it:
- A TestFlight Account
- An Apple Developer account
- An app to test
- Some willing victims testers with devices running iOS
Now it's time to go into TestFlight and send out invitations by email or link from the Team Management page. Your testers will be invited to create accounts in TestFlight and download the TestFlight app to their devices, and the Team Management page will keep you updated about their statuses. The Team Management page will also show you the Device IDs for the iPhones and iPods your testers are using. These are important for the next step. (You can also collect these by hand from your testers as described here.)
Now you can log in to the Devices section of the iOS Provisioning Portal and add your testers' devices with creative labels and the Device IDs you found previously. (You can have at most 100.) Next, move to the Provisioning Profiles section to add a provisioning profile for your app or edit the one you already have. You'll want to add to that profile all the devices you want to allow to test. Download that provisioning profile.
Now you can build your app. Whether you're using XCode or Titanium, you'll want to build it for Ad Hoc distribution. Once it builds, your app will show up in the Xcode Organizer. Select it, click Share, select the provisioning profile you downloaded in the previous step from the popup menu, and click Save to Disk. Then simply go to the builds section of TestFlight and upload the archive file you just created. TestFlight will automatically match the users allowed by the provisioning profile in your app with the users in your TestFlight team, and offer to send emails informing your testers of the new build.
That's it! Your testers will be able to install the build by clicking a link emailed to their iOS devices or by launching the TestFlight app, and you'll get to sit back – until the bug reports start to roll in.
Screenshot from testing of Foto Puzzler through TestFlight
Alex Edelman is the developer of the Handshake(R) line of mobile applications from Handshake Media, Incorporated. He is Chief Technology Officer at Handshake and a co-founder of She Chooses.