Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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

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.

like image 268
NovaJoe Avatar asked Jan 20 '11 02:01

NovaJoe


People also ask

How do I distribute iOS apps without app Store?

Apple offer two solutions for this: Apple Developer Enterprise Program, This allows you to distribute your app as a URL via your internal site or web server. Volume Purchase Program for enterprises, This allows you to distribute apps via a URL to managed devices within your organisation.

How do I distribute an enterprise iOS app at home without MDM?

You can share the html link to your users and they would be able to download the app by clicking “Install iOS in-house App” on your html. After downloading the app, users needs to Trust the certificate under Settings → General → Device Management → <Enterprise Name> then only they would be able to open the app.


2 Answers

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

like image 61
rob Avatar answered Oct 17 '22 17:10

rob


I think it wound up just being a provisioning profile issue. Never REALLY got to the bottom of the exact issue, but I found a great tool that makes the whole process SUPER easy for me: Beta Builder

like image 21
NovaJoe Avatar answered Oct 17 '22 17:10

NovaJoe