【问题标题】:iPhone signing conceptual question: why is Ad Hoc deployment needed?iPhone 签名概念问题:为什么需要 Ad Hoc 部署?
【发布时间】:2010-10-11 04:11:00
【问题描述】:

我一定在概念上遗漏了一些东西,我希望有人能纠正我。

我不太清楚为什么需要对 iPhone 应用程序进行 Ad Hoc 部署,以及为什么不能使用开发构建。

具体来说,我不明白为什么我不能只向某人发送我的开发配置文件和我的应用程序,只要他们的机器 ID 包含在我的开发配置文件中。

因此,在 Apple Provisioning Portal 的设备下,我添加了我的 iPhone 和我朋友的设备 ID。在证书下,我提交了一个 CSR,据我了解,它不包含任何关于我的设备的特定内容(它向我的机器写入了一个私钥,但我认为 CSR 中没有关于我的设备的任何特定内容)。然后我得到一个我下载的证书。然后我创建一个开发配置文件。在此过程中,我选择了我刚刚创建的证书(以我公司的名义,但没有具体说明我的设备),然后我检查了所有设备,包括我朋友的设备。然后我在我的 iPhone 上下载并安装该配置文件(并且只有该配置文件,没有其他配置文件或证书或我的设备上的任何东西)。然后我构建我的应用程序,并使用该开发配置文件对其进行签名。然后我可以在我的 iPhone 上安装创建的 .ipa,它就可以工作了。

那么是什么让我无法向我的朋友(我在创建开发配置文件时检查其设备 ID)发送相同的开发 .mobileprovision 和 .ipa 文件,而他可以安装和运行相同的文件?

这不是让我获得与 Ad Hoc 部署相同的效果,而没有 Ad Hoc 部署的额外麻烦吗? (我承认可能不多,但有一些)

【问题讨论】:

    标签: iphone signing adhoc


    【解决方案1】:

    AdHoc 不是开发性分发;它是一个没有 App Store 的发行版。这是一个生产级环境。对于大多数应用程序来说,这并不意味着什么,但对于处理 iAd 或推送通知的应用程序来说,这是一个大问题。

    例如,iAd 开发构建错误率较高(大约 80% 错误)的拉式广告,以便开发人员能够解决错误条件的问题。这些错误情况在 iAd 生产环境(App Store/Ad Hoc 构建)中以较低的频率出现。

    【讨论】:

    • 好吧,出于某些目的,发行版构建的行为可能有所不同。但就我的问题而言,让我们假设您想向朋友展示并获得反馈的内容在开发版本和分发版本中是相同的。
    • 这可能是你想做的。但是,Apple 将 Ad Hoc 分发视为一种发布机制,而不是一种测试/开发环境。
    【解决方案2】:

    Ad Hoc 部署允许 Beta 测试人员在没有 Mac 或带有开发者工具的 Mac 的情况下安装开发者的应用。 Ad Hoc 收件人可以在 Windows PC 上使用 iTunes,只要他们的设备 UDID 是向开发者注册的最多 100 个设备之一,他们就可以安装通过电子邮件发送给他们的 Ad Hoc 应用程序。

    公开私钥,这将允许其他人使用开发者注册名称签署应用程序可能不是每个开发者都希望陌生人做的事情,只是为了让他们测试您的应用程序。

    【讨论】:

    • 谢谢,但我不明白给我的朋友我的应用程序和我的开发配置文件如何给他们我的私钥。您已经描述了临时构建可以做什么,但我的问题是为什么开发构建不能做同样的事情?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-24
    • 1970-01-01
    相关资源
    最近更新 更多