【Ad Hoc】以 OTA 方式发布 app

实现目的

  1. 不通过 App Store,而是以 Ad Hoc 方式发布 APP。
  2. 不使用本机的 ITunes 安装 APP,而是以 OTA(Over The Air)方式安装 APP。

 

如何生成 Ad Hoc App,也就是 .ipa 文件

不在本文的讨论范围内,本文假设已经成功生成了 .ipa 文件。

 

发布 APP 所需文件

  1. Download.html (手工创建)
    文件内容:
    <a href="itms-services://?action=download-manifest&url=https://...app.plist">INSTALL!!</a>

    该文件是最终 iOS 设备在 Safari 中访问的页面,只需包括一个指向 .plist 文件的超链接。

  2. app.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://...app.ipa</string>
                    </dict>
                </array>
                <key>metadata</key>
                <dict>
                    <key>bundle-identifier</key>
                    <string>cn.project7.EzDAQMobile</string>
                    <key>bundle-version</key>
                            <string>1.0</string>
                    <key>kind</key>
                    <string>software</string>
                    <key>title</key>
                    <string>EzDAQMobile</string>
                </dict>
            </dict>
        </array>
    </dict>
    </plist>

    该文件在 MAC 上可由 XCode 工具生成,也可手工创建。内容格式可上网查阅,此处只需注意其中包含了指向 .ipa 文件的超链接。

  3. app.ipa (文件名没有强制要求)
    程序文件。

 

发布必需事项(重要)

  1. 以上文件中的超链接必须是可访问的,发布前可通过直接访问 url 来确认。
  2. IOS 7 开始,要求上述的超链接必须是 https 链接。
  3. 最要命的 https 证书来了,要求服务器端用于 https 的证书在 iOS 设备上是可信任的。普通人不可能承担注册证书的费用,那么 apple 提供了一个 iphone configuration utility(目前只有 MAC 版),用于将服务器证书安装到 iphone 设备上。只有证书被信任,才能访问到 ipa 文件,否则会提示错误“无法连接...”。

 

发布可选事项

在自己的服务器上建立 https 连接,步骤非常简单,但是要让每台 iOS 设备都安装并信任证书,在设备和步骤上都是非常繁琐的。对此,可考虑使用第三方的 https 服务器来实现程序的发布,例如 DropBox 等。在 DropBox 上的操作步骤可参考以下链接中的三楼回复。

http://stackoverflow.com/questions/20276907/enterprise-app-deployment-doesnt-work-on-ios-7-1

 

posted on 2014-12-21 15:32  CsharpStyle  阅读(1945)  评论(0编辑  收藏  举报