Enterprise App Update Distribution on iOS 8

2020-01-23 04:46发布

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

13条回答
我命由我不由天
2楼-- · 2020-01-23 05:17

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.

查看更多
我想做一个坏孩纸
3楼-- · 2020-01-23 05:21

Same problem exists on iOS 10 beta 1.

Dec 31 19:01:32 iphone-6s itunesstored[98] : LoadExternalDownloadManifestOperation: Ignore manifest download, already have bundleID: com.***************.ios with phase: SSDownloadPhaseWaiting

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.

查看更多
不美不萌又怎样
4楼-- · 2020-01-23 05:21

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.

查看更多
闹够了就滚
5楼-- · 2020-01-23 05:23

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

查看更多
做个烂人
6楼-- · 2020-01-23 05:28

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:

  • delete the App Store version before installing the adhoc
  • distribute the adhoc as 'new' app by changing the bundle id in both the app and the distribution plist
  • use TestFlight
查看更多
Evening l夕情丶
7楼-- · 2020-01-23 05:32

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 the display-image and full-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.

查看更多
登录 后发表回答