使用BetaBuilder创建的Adhoc OTA构建不在iOS 8.4.1中安装

时间:2015-09-03 10:54:36

标签: ios iphone ad-hoc-distribution ota ios8.4

我在iOS 8.4上通过BetaBuilder分发OTA Adhoc版本时遇到了一个奇怪的问题。 虽然配置文件包含准确的设备ID,但构建在iOS 8.1设备上完美安装,但不在8.4.1上安装。 我正在使用 BetaBuilder for iOS Apps的开源版本,版本1.8.1(16)。 单击该链接,将用户转到安装页面,但在单击该链接后,没有任何反应。当用户持续按下链接时,它会提示通过Appstore打开。见附图:

enter image description here

生成的manifest.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>items</key>
    <array>
        <dict>
            <key>assets</key>
            <array>
                <dict>
                    <key>kind</key>
                    <string>software-package</string>
                    <key>url</key>
                    <string>https://www.myhosting.com/betabuild/myapp.ipa</string>
                </dict>
            </array>
            <key>metadata</key>
            <dict>
                <key>bundle-identifier</key>
                <string>com.mycompany.myapp</string>
                <key>bundle-version</key>
                <string>1.0 (1)</string>
                <key>kind</key>
                <string>software</string>
                <key>title</key>
                <string>apptitle</string>
            </dict>
        </dict>
    </array>
</dict>
</plist>

HTML文件中的下载链接:

<div class="link">
    <a href="itms-services://?action=download-manifest&url=https://www.myhosting.com/betabuild/manifest.plist">
    Tap Here to Install<br />myapp 1.0 (1)<br />Directly On Your Device
    </a>
</div>

文件托管在支持SSL的服务器

为什么构建在iOS 8.1设备上安装,但不在iOS 8.4.1设备上?我该如何解决这个问题?

TIA

1 个答案:

答案 0 :(得分:1)

如果您尝试通过网址下载IPA:

创建一个html文件并将此代码放入:

<a href="itms-services://?action=download-manifest&url=https://xxxxx.com/yyy/manifest.plist">

你的manifest.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>items</key>
    <array>
        <dict>
            <key>assets</key>
            <array>
                <dict>
                    <key>kind</key>
                    <string>software-package</string>
                    <key>url</key>
                    <string>https://xxxxx.com/yyy/ipaname.ipa</string>
                </dict>
            </array>
            <key>metadata</key>
            <dict>
                <key>bundle-identifier</key>
                <string>bundleid.com</string>
                <key>bundle-version</key>
                <string>1.0.4</string>
                <key>kind</key>
                <string>software</string>
                <key>title</key>
                <string>appname</string>
            </dict>
        </dict>
    </array>
</dict>
</plist>

html文件,清单文件&amp; IPA应该在同一个文件夹中以方便

只需打开html文件,点击链接应该不错

不幸的是,OTA发布仅适用于SSL因此您必须在支持ssl的服务器上托管您的文件