tags:

views:

572

answers:

3

My company has recently started developing custom iPhone applications for various clients. One of the challenges we are running into is how to get these applications to the client so they can review them during the development process.

Ideally, this would just be a matter of sending them the app file and having them install it on their iPhone. Of course app signing makes things much more complicated than that. We would have to add their phone ID to our development profile, have them provision their phone to accept the app, then install the app. This creates a headache for us of course in trying to walk the client through this process.

At this point, our best solution is either to simply send them screenshots or to snail-mail an iPod Touch back and forth with the app installed on it. Of course neither of those options is ideal.

Is there a better way to distribute development versions of iPhone/iPod Touch apps to non-technical clients?

+3  A: 

Are you using Ad-Hoc distribution profiles? For me the process is like this:

They send their device uuid - which is visible in iTunes after you click the device sn. Then i send them the compiled application, and a provision profile. They drag both to iTunes, and sync their iPhone.

I don't think that's impossible for non-technical clients.

mfazekas
Eric Petroelje
Your client can't use iTunes? How did they get the iPhone to work in the first place?
Chris Lundie
@Boot To The Head - Read the discussion at the link I posted in my first comment and you'll see that this method has its own set of problems. Just looking to see if anyone has a better idea of how to handle this.
Eric Petroelje
This isn't exactly the solution I was looking for, but it sounds like its probably the best solution out there, so I'll accept it. Thanks mfazekas!
Eric Petroelje
That thread is pretty old at this point, and may confuse some people... just read the distribution help document on the development portal (where you download the ad-hoc cert from) and follow the instructions EXACTLY. Including the dist.plist and get-task-allow, even for ad-hoc (not just final).
Kendall Helmstetter Gelner
+1  A: 

We ran a similar beta program with non-technical users. We had 30-40 participants, most of them very non-technical and it was definitely painful organizing the provisioning and getting the apps on their phones. We ran into the following problems:

  • Dealing with Windows users. We were working on Macs and it's difficult to ensure that your distribution archive will work properly with the Windows version of iTunes. Testing the installation on a Windows VM helps, but it's definitely a tricky area.
  • Provisioning users as beta applications trickle in. Since we had no defined beta schedule (our fault), we provisioned users as they came in and when we felt like enough had accumulated, we pushed out a new build that would work on the new devices. Unless you're organized, it's possible that some users may accidentally be left out and not be provisioned for a particular build. If they're not provisioned, this can be difficult to debug from the iTunes error message that pops up when they attempt to install.
  • Dealing with iTunes errors when users try to install or upgrade. iTunes seems to be very particular about how you install apps and we could never crack the code on the best method to have our users install or upgrade the app (drag and drop the .app file/directory? build a .ipa file and give it to them that way?)

All that being said, if you're only distributing to a few users per client, ad hoc distribution should be manageable and is definitely better than screenshots or mailing a device.

drewh
+2  A: 

You can snail-mail them an adhoc-provisioned device, and then email them/let them download updated builds. Best of both of your approaches.