Why do I get "unable to download" at the end of a wireless iOS app distribution?

NovaJoe picture NovaJoe · Jan 20, 2011 · Viewed 17.7k times · Source

I'm developing an iOS app for iPhone and iPad. It runs great on the simulators and actual devices. It installs without error using both iTunes and the iPhone Configuration Utility. I cannot, however, seem to get wireless distribution to work properly.

Sanity checks:

  1. I have an Apple developer license.
  2. I have a valid developer certificate from the Provisioning Portal.
  3. I have added my device's UDID in the Provisioning Portal.
  4. I have created a valid AppID in the Provisioning Portal.
  5. I have created a distribution provisioning profile. Developer profiles don't seem to work for this.
  6. I have clicked the proper aforementioned device to be active for the given provisioning profile.
  7. I have downloaded and installed the certificate and provisioning profile.
  8. A release build installs perfectly with both iTunes and the iPhone Configuration Utility.
  9. For wireless distribution, I have followed Apple's instructions: I have proper .ipa, .mobileprovision, and .plist files setup and hosted on a LAMP web server (with the proper MIME types added per Apple's instructions).
  10. The .plist file is properly formatted.
  11. The URLs to the .mobileprovision and .plist files are correct.
  12. The .mobileprovision file downloads and installs properly via an iOS device's Safari browser.
  13. The iOS device's Safari browser properly processes the .plist file, finds the .ipa file, and prompts for install with a message "[my domain name] would like to install '[my app name]'". I click the "Install" soft button.
  14. Installation commences with the typical grayed version of the application icon and blue progress bar that proceeds from left to right. The icon's text is at first "Loading", and then changes to "Installing". After several seconds of "Installing", an alert is displayed: "Unable to download '[my app name]'". I am prompted with "Done" and "Retry" soft buttons. "Retry" of course just repeats the process and fails again. "Done" exits installation, and after a moment, the app icon disappears.

Just to be clear, this installs PERFECTLY via iTunes and the iPhone Configuration Utility. I have read countless blogs and articles on how to get this working, but no one seems to have definitive answers. Is there ANYONE that can think of what is going wrong here??? Thanks in advance. Pulling my hair out.

Answer

rob picture rob · Jan 20, 2011

NovaJoe -- I was pretty discouraged to review your link as it does appear to read that you need Enterprise Developer license...

I think I figured it out. Read the first paragraph and first bullet point: http://developer.apple.com/library/ios/#featuredarticles/FA_Wireless_Enterprise_App_Distribution/Introduction/Introduction.html

This would explain why all wired deployment methods work, but Wireless Distribution always fails. Enterprise developer account is required, it seems. >.<

But, this is not the case! I was able to successfully deploy by completing the following:

  1. removing app archive from xcode organizer
  2. in the xcode project: clean/clean all targets, then build and archive with the developer development certificate
  3. in organizer, select the re-added application archive, and select Share...
  4. For Identify, pick the Same Development Cert used to build the app and 'save to disk'

You now will have an .ipa file that will work, but in order for the remote-install to register, you will still need the plist file that is generated (and pointed to the new .ipa) for the process to initiate.

So to summarize -- follow enterprise process, then replace generated enterprise .ipa with non-enterprise .ipa