Installing Adhoc (Beta) iPhone Applications via iTunes on Microsoft Windows
First a shout out to the blog posting I followed when I was performing this for the first time:
Craig Hockenberry, Beta Testing on iPhone 2.0
http://furbo.org/2008/08/06/beta-testing-on-iphone-20/
Then some additions/re-emphasis:
#1When Craig Hockenberry says:
Now that you have setup the entitlements, you’ll want to create a new configuration for your beta builds. I found it easiest to make a copy of my existing App Store distribution configuration and change the code signing setup:
- Make sure that you new beta configuration is the Active Configuration. Xcode has some problems if you try to modify Code Signing parameters on a configuration that is not active.
- Use Project > Project Settings to open the build settings. Change the “Code Signing Provisioning Profile” to be “Any iPhone OS Device” and then select the name of the provisioning profile you chose in the Program Portal. If you don’t see the name listed, make sure that the .mobileprovision file is located in ~/Library/MobileDevice/Provisioning Profiles and that the “Code Signing Identity” is set to “iPhone Distribution”.
- Use Project > Edit Active Target to open the target settings. Change the “Code Signing Entitlements” to be “dist.plist”.
- Clean the build and you should then be able to build a beta release.
Xcode can get confused when changing provisioning and other code signing settings, so don’t be afraid to quit and restart to get things synced up.
follow these instructions to the letter. Especially on step #3 use Project > Edit Active Target and NOT Project > Project Settings … or you’ll find yourself shipping a development version of your supposedly adhoc (beta) build. When Craig says Xcode gets confused that is right, it might display that you’ve set these settings for the project at your new target’s “level” (i.e. for it only) but the build doesn’t seem to work that way. So (1) set the adhoc build as the currently active target then (2) edit that active target.
Tip: When you’ve done your build look inside the build directory at the embedded.mobileprovision to ensure it is your distribution one, and not your development one.
#2When Craig says:
Xcode can get confused when changing provisioning and other code signing settings, so don’t be afraid to quit and restart to get things synced up.
I had to. Organizer was complaining about the provisioning file, and (sorry) but I don’t recall the error message it gave. Something about the provisioning profile not having an associated certificate or something. I did an online search and received lots of complex ideas for solving it, and in the end a simple exit/restart of xcode was what did the trick.
#3To install the adhoc application on Windows:
Initially none of my beta testes could get this working. They could install the provisioning file by dragging it over the applications pane on iTunes, but never received a “+” (plus) for ‘ok to drop’ sign when they dragged the WildObsObserver.app folder (unzipped from WildObsObserver.app.zip) over the same place.
It turns out that inside the WildObsObserver.app folder was another WildObsObserver.app folder (parallel to an underscore Mac directory) and dragging that folder works. Some quirk of ZIP on Mac verses ZIP on PC? Whatever, that inner folder is the one you want.
Tip: I’ve found that the finder option to ‘compress “WildObsObserver.app”‘ option occasionally generates a corrupted (and way too small) zip file. Ensure the ZIP file size is within the ballpark of the original application.
#4 I’ve found that adhoc applications seem to get a generic logo when shown in iTunes, yet the real logo shows when the application is installed. I’m told that this is not a problem when deployed via the app store, so ought be a cosmetic issue to ignore. [Let me know if you know otherwise, please.]
Good luck beta testing your iPhone applications…