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

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


当前回答

Our team uses dropbox for ad-hoc distribution which uses https but still our app was failing to install. After much trouble-shooting we realized that the title field is required too. Whenever we sent out a link without this field safari ignored the link and did not prompt the user to install. Sometimes for quick development tests we skipped over the title node in the xml and not populate it. In case this is helpful for anyone having this issue make sure that your .plist contains the following nodes populated:

      ....
     <string>software</string>
    <key>title</key>
     <string>Your App Name</string>
      ...

其他回答

一些好人通过使用Class 1 StartSSL证书和共享Apache配置来处理这个问题,该配置添加了证书支持(将与任何证书一起工作)和更改现有*中的链接的代码。Plist自动文件。太长了,不能复制,所以这里是链接: http://cases.azoft.com/how-to-fix-certificate-is-not-valid-error-on-ios-7/

如果你碰巧有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上无法工作

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

Apter尝试更改itms-services://?action=download-manifest&url=http://....itms-services: / / ? action = download-manifest&url = https://..。这也行不通。警报是无法连接到我的域。我发现也需要更新网页。

问题不在于主URL是HTTPS,而在于页面内链接中的一些HTML代码。您需要开发人员更新网页。我还注意到在你的登台域上没有有效的SSL证书,所以你需要安装一个或使用Dropbox,这里的链接可能对你有帮助

进一步解释之前关于Dropbox的问题,我实现了以下文件树,比如只有PLIST文件必须上传到Dropbox:

upload the ipa file to your server in http (no change here) upload the provisioning (.mobileprovision) file to your server in http (no change here) upload the plist file to your dropbox (no change to do inside the plist file as the URLs are in absolute) use the option "Share the link with Dropbox" which copies the link to your clipboard. This link has to be copied into your html file into the itms-servivces URL's query after changing the part www.dropbox.com by dl.dropboxusercontent.com. Note I URL encoded the link as suggested by @Mike but I don't test without to do it. Now the itms-services URL's query should look like this: itms-services://?action=download-manifest&url=https%3A%2F%2Fdl.dropboxusercontent.com%2Fs%2FYourShortDropboxLink.plist upload the html file to your server in http. Note the html file contains both links to ipa and provisioning files. access to your html file from your device and now the ipa can be installed by OTA like usually.

从现在开始,只有ipa文件必须更改,OTA提供下一个应用版本给你的测试人员。直到苹果改变安全规则。

我在这里加入我使用的非常简单的HTML文件:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>iPhone app for test</title>
</head>
<body>
<h1>iPhone app for test</h1>
<br/>
<ul>
    <li><a href="http://www.yourdomain.com/with/directories/provision/v.last/yourprovision_adhoc.mobileprovision">
            Install Provisioning File</a></li>
    <li><a href="itms-services://?action=download-manifest&url=https%3A%2F%2Fdl.dropboxusercontent.com%2Fs%2FYourShortDropboxLink.plist">
            Install Application</a></li>
</ul>
</body>
</html>