tags:

views:

1136

answers:

4

So we all need to deploy our applications to real iPhones for testing purposes. I'm sure you much like me have found a group of sucke^H^H^H^H^H testers to help you out with this process. Whenever you want to send a build out to a new person this requires adding the new device id to your ad hoc provision. This part is fairly painless. The trouble starts when trying to get Xcode to use the new provision file.

Whats the best way to get Xcode to pickup and use the new provision first time? Ideally I would like to do this without changing the .xcodeproj file.

A: 

I haven't been able to do this without changing the .xcodeproj file, but that's probably because I've had terrible luck getting things to work without going through the whole "build clean, deselect the provisioning profile, reselect the provisioning profile" process.

Justin Weiss
+4  A: 

I've done this as follows, with good success:

  • Send out call for beta testers.
  • Respond to each with "in order to beta test, I need your UDID. You can send it to my by following these instructions..."
    • Folks incapable of sending UDID are told "thank you for your time, but beta is no longer taking applications."
    • If too many people can't figure it out, review your instructions.
  • After several days, make a batch provision file with all the people in beta.
    • I name the devices after the person's email address, i.e., mikeATexampleDOTcom.
    • I name the provision after the beta program, i.e., Neko-beta-1.
  • Build the app, provision & deliver (with non-technical installation instructions!)
  • For stragglers, you can either build another provision, or add them to the existing one, or tell them "beta's full."

Then...

  • After a few days, send email asking how its going, if they have any difficulties, etc.
  • ~3 days before end of Beta, email saying "beta is coming to a close, please be sure to return your questionaires."
  • After close of beta, be sure to thank everyone, even those who did not reply.
Olie
+1  A: 

How to automatically build an IPA file from XCode: http://www.idotcom.us/2009/05/how-to-build-a-ipa-file-from-xcode/

Step-by-step explanation of how to build an IPA file to send out via ad-hoc. You do have to change your XCode project but this way you create a separate target so it doesn't affect your main project.

Ramin
+1  A: 

What I do now is create a new provisioning profile if the devices change. Even if you modify an existing one, it is essentially a new profile with a different ID, but a new name. Then testers' iPhone fill up with provisioning profiles with the same name :)

Yes, it means changing your Xcode project file each time, but in my experience it's more reliable.

If you do keep the same name, beware of Xcode's cache of provisioning profiles, which can create a mess with builds. Your best bet is to remove of all the provisioning profiles from the Organizer window, as well as deleting the files in ~/Library/MobileDevice/Provisioning Profiles. Then restart Xcode and reimport the provision profile.

bunnyhero