我有一个企业应用程序,我通过itmsURL 分发:
itms-services://?action=download-manifest&url=itms-services://?action=download-manifest&url=https://$MY_PLIST_URL.plist
Run Code Online (Sandbox Code Playgroud)
在iOS 7上,下载和更新都可以正常工作.但是,在iOS 8上,我收到错误:
LoadExternalDownloadManifestOperation: Ignore manifest download, already have bundleID: com.mycom.MyApp
Run Code Online (Sandbox Code Playgroud)
在我的plist中,我有
<key>bundle-identifier</key>
<string>com.mycom.MyApp</string>
<key>bundle-version</key>
<string>0.2.2</string>
Run Code Online (Sandbox Code Playgroud)
在iOS 8上的应用程序中,我运行的是0.2.1版本
我使用我的通配符配置文件构建了一个ipa.我正在托管ipa,我的测试人员正在我们的设备上下载它.
对于iOS7 +设备,它工作正常.
我在我的一台设备上安装了iOS8 Beta.如果我从应用程序商店安装我的应用程序,它安装并正常工作.如果我尝试安装ipa版本,我会收到"无法下载应用程序"错误.
我使用这种风格的URL下载:
itms-services://?action=download-manifest&url=https://url-to-plist.plist
Run Code Online (Sandbox Code Playgroud)
我的plist看起来像:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>https://url-to-ipa.ipa</string>
</dict>
<dict>
<key>kind</key>
<string>full-size-image</string>
<key>needs-shine</key>
<true/>
<key>url</key>
<string>https://url-to-artwork/iTunesArtwork.png</string>
</dict>
<dict>
<key>kind</key>
<string>display-image</string>
<key>needs-shine</key>
<true/>
<key>url</key>
<string>https://url-to-icon/Icon.png</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.vistair.docunet-test</string>
<key>bundle-version</key>
<string>3.0.400</string>
<key>kind</key>
<string>software</string>
<key>subtitle</key>
<string>DocuNet</string>
<key>title</key>
<string>DocuNet</string>
</dict>
</dict>
</array>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)
下载/安装进度大约2/3,然后我得到错误.
控制台信息如下所示:
Sep 10 09:22:54 iOS8-iPad itunesstored[80] <Warning>: LaunchServices: installing placeholder for com.vistair.docunet-test
Sep 10 09:22:54 iOS8-iPad installd[36] <Notice>: 0x419000 …Run Code Online (Sandbox Code Playgroud)