itms-services://?action = download-manifest在IIS中不起作用

时间:2012-10-10 10:19:31

标签: ios xcode iis

我创建了一个ios应用程序,让所选设备下载并安装在idevices浏览器safari上。所以建立一个这样的链接:

 <a href="itms-services://?action=download-manifest&url=http://myserver.com/Info.plist"> 

当我点击它时弹出一条消息“无法连接到myserver.com”。

然后我发现IIS缺少MimeType,所以我添加回来。

 .ipa application/octet-stream
 .plist text/xml

但最后当我点击它时根本没有回应,为什么? 我怀疑info.plist设置是错误的还是什么。

以下是我的info.plist设置:

  <?xml version="1.0" encoding="UTF-8"?>
  <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  <plist version="1.0">
   <dict>
<key>AppStoreFileSize</key>
<integer>4329818</integer>
<key>ApplicationProperties</key>
<dict>
    <key>ApplicationPath</key>
    <string>http://myserver.com/Apps.ipa</string>
    <key>CFBundleIdentifier</key>
    <string>com.app.app</string>
    <key>IconPaths</key>
    <array>
        <string>http://myserver.com/icon.png</string>
        <string>http://myserver.com/icon.png</string>
        <string>http://myserver.com/icon@2x.png</string>
        <string>http://myserver.com/icon-72.png</string>
    </array>
    <key>SigningIdentity</key>
    <string>CSR Certificate</string>
</dict>
<key>ArchiveVersion</key>
<integer>2</integer>
<key>CreationDate</key>
<date>2012-10-10T09:02:39Z</date>
<key>Name</key>
<string>AppName</string>
<key>SchemeName</key>
<string>AppName</string>

3 个答案:

答案 0 :(得分:3)

您的代码需要看起来像这样

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<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>http://www.example.com/test.ipa</string>
                                </dict>
                        </array>
                        <key>metadata</key>
                        <dict>
                                <key>bundle-identifier</key>
                                <string>com.name.name</string>
                                <key>bundle-version</key>
                                <string>1.0</string>
                                <key>kind</key>
                                <string>software</string>
                                <key>title</key>
                                <string>Name</string>
                        </dict>
                </dict>
        </array>
</dict>
</plist>

记得改变:

Bundle Identifier= <string>com.company.name</string>
Installer Name= <string>Name</string>
Ipa Download= <string>http://www.example.com/test.ipa</string>

<string>http://www.example.com/test.ipa</string>更改为您找到ipa的位置以进行安装。 创建Install.plist或Start.plist,然后进入移动版Safari并输入:itms-services://?action=download-manifest&url=http://www.example.com/whatever.plist 它应该是下载并下载它下载时可能会有一些错误。 请记住,ipa需要有效的UDID =唯一设备标识。

希望这会有所帮助。

最诚挚的问候塞拉斯。

答案 1 :(得分:1)

自iOS8以来,不再接受未加密的plist下载。

因此,您需要有效的ssl证书并将方案更改为https。例如,您可以使用amazon s3进行测试。

答案 2 :(得分:0)

你必须在.plist文件

中对所有网址使用Https