I have an enterprise app that I'm distributing via an itms
URL:
itms-services://?action=download-manifest&url=itms-services://?action=download-manifest&url=https://$MY_PLIST_URL.plist
On iOS 7, both downloads and updates work fine. On iOS 8, however, I get the error:
LoadExternalDownloadManifestOperation: Ignore manifest download, already have bundleID: com.mycom.MyApp
In my plist, I have
<key>bundle-identifier</key>
<string>com.mycom.MyApp</string>
<key>bundle-version</key>
<string>0.2.2</string>
and on my app on iOS 8, I'm running version 0.2.1
I have just encountered this issue on a device running 8.1, upgrading the device to 8.3 has resolved the issue. So either the bug is no longer present in 8.3.... or the act of upgrading cleared the cached data anyway.
Same problem exists on iOS 10 beta 1.
One thing that I do not understand here is that the date is December 31st in the XCode device log, however, device has correct date and time configured.
Update: Guys from HockeyApp notified Apple about this problem during WWDC and fix should come in the next seed.
I am having the same problem. I reproduced it by:
1) Having my application installed while upgrading from iOS 7 to iOS 8 GM
2) Removing it in iOS 8
3) Trying to install it via itms-services: with the same bundle name
When I tried to change the bundle-identifier in the server plist (not in the applications Info.plist), it worked (application was downloaded an no "shadow" icon remained). But it looks like an apple bug.
If you build your iOS apps with a build script and you were previously using PackageApplication with the --sign flag then that may be causing problems. The --sign flag doesn't work any longer when building on 10.10 and removing it got all of our iOS apps installing again.
see: https://devforums.apple.com/thread/251624?tstart=0
The accepted solution no longer works on iOS9.
My understanding is that Apple has closed a serious iOS security hole by preventing adhoc binaries from replacing stock apps or apps downloaded from the App Store. See this article for background (CVE-2015-3722/3725 and CVE-2015-3725):
https://www.fireeye.com/blog/threat-research/2015/06/three_new_masqueatt.html
Taken the security implications, I wouldn't expect this behaviour to change in future IOS versions. Alternative options seem to be:
Take a look over this answer and this answer.
You can fix this issue without any hacks, for iOS8 you have to include in the
assets
key of the manifest.plist
file thedisplay-image
andfull-size-image
keys. They were available in Xcode 5 when saving an archive for enterprise and add-hoc deployment, but were not required.I have created a gist on github with the template for the install-manifet.plist file.