我们通过一个企业账户,使用itms-services:// URL来分发应用。这一直都很正常,但在我们的iPad上安装了iOS 7.1测试版后,它就拒绝安装了。相反,我们只是得到一个通用的不能连接到example.com的消息,当下载应用程序出现任何问题时,iOS会毫无帮助地显示这个消息。

我无法在SO,谷歌或7.1发布说明中找到任何东西来建议可能导致问题的原因。


当前回答

如果你碰巧有AWS S3,它也很有魅力。好。相对而言:-)

在AWS中为您的ad hocs创建一个bucket,添加一个索引文件(它可以只是一个空白的index.html文件),然后使用一个可以连接到S3的客户端,如CyberDuck或Coda(我使用Coda -在那里您可以选择添加站点以获得连接窗口),然后设置连接如下所示:

然后在XCode中构建您的企业专用,并确保使用https://s3.amazonaws.com/your-bucket-name/your-ad-hoc-folder/your-app.ipa作为应用程序URL,并将其上传到新的S3桶目录。

您的itms链接应该匹配,即itms-services://?action=download-manifest&url=https://s3.amazonaws.com/your-bucket-name/your-ad-hoc-folder/your-app.plist

和s。

这只适用于通用的AWS url -我还没有在AWS上尝试过自定义url,所以你可能需要做一些不同的事情。

我决心尝试让詹姆斯·韦伯斯特的解决方案凌驾于工作之上,但我无法让它与普雷斯克一起工作。

其他回答

我也遇到了同样的麻烦,照上面说的做了。

Put the plist in dropbox. Over the download file button, below an image of the document with mouse right button select the copy link action. This link is already something like https://dl.dropboxusercontent.com/s/xyz123/app.plist?stuff=stuff with many params. Remove the parameters (kept only address between https and .plist) Browse for url encode online, selected one of those links, copy, paste, execute, then the resulting text copied and pasted into the html where I have the itms-services link. By the way I have this html in two different locations, one of those is where the ipa is located. Make sure the plist includes absolute references to the ipa file.

这两个页面都成功地在ios 7.1的iphone上安装了应用程序

但是,现在安装了ios 7.0x的iphone无法安装该应用程序。

我创建了一个新问题:升级后的adhoc应用部署在7.1之前的ios上无法工作

这两个问题紧密相关,也因缺乏官方参考而联系在一起。

我可以确认它的工作,但你必须把html和plist的dropbox。 它也适用于非企业OTA,即你想要与你的开发团队共享应用程序。

我做了:

a)在我的网站上,我用这个链接做了一个页面:

.. href="https://dl.dropboxusercontent.com/u//(your DB id)/ipa.html

b)在DropBox上我写了另一个HTML页面:

. .https://dl.dropboxusercontent.com/u/(your DB id)/MyApp.plist"> . DB id " 点击“安装MyApp”

c)在DropBox上移动plist,但让它指向我的旧服务器(没有https)

在阅读这篇文章后,我仍然有一个下载我的应用程序的问题。问题是由于自签名SSL证书。

我找到了解决这个问题的办法。您需要上传扩展名为'的证书文件。Crt ',并在移动safari中输入它的地址。系统询问您是否将证书添加到受信任证书列表。在此操作之后,您将能够安装您的特别应用程序。

通用的解决方案是将你的设备连接到Mac上,然后观察安装过程中发生了什么。我得到一个错误:

Could not load download manifest with underlying error: Error Domain=NSURLErrorDomain Code=-1202 "Cannot connect to the Store" UserInfo=0x146635d0 {NSLocalizedDescription=Cannot connect to the Store, NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?, NSLocalizedFailureReason=A secure connection could not be established. Please check your Date & Time settings., NSErrorFailingURLStringKey=https://myserver.com/app/manifest.plist, NSUnderlyingError=0x14678880 "The certificate for this server is invalid. You might be connecting to a server that is pretending to be “myserver.com” which could put your confidential information at risk.", NSURLErrorFailingURLPeerTrustErrorKey=, NSErrorFailingURLKey=https://myserver.com/app/manifest.plist}

错误中甚至有检查日期设置的建议。不知什么原因,那天是1970年1月1日。设置正确的日期就解决了这个问题。

打开终端,执行如下命令: Curl -i https://(。Ipa文件路径不是plist)

这将告诉您安装程序是否可以看到IPA文件。如果您使用'-i'命令运行curl命令,您将看到完整的响应,它可能不是IPA文件。 这是安装程序看到的响应,因此如果它没有返回HTTP 200和IPA,则需要在您的端返回它。

ITMS安装程序不保存Safari中的任何上下文。如果您在Safari中的安全门户进行身份验证,则身份验证cookie不会传递给安装程序。即安装程序需要能够看到应用程序没有认证,这可能是你得到“无法连接到服务器”的原因。