3

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

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

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

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

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

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

4

2 回答 2

3

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

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

于 2010-10-11T07:01:02.480 回答
0

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

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

于 2010-10-11T05:26:41.337 回答