团队环境中的 iPhone ad hoc 分发

Posted

技术标签:

【中文标题】团队环境中的 iPhone ad hoc 分发【英文标题】:iPhone ad hoc distribution in a team environment 【发布时间】:2009-03-18 19:22:56 【问题描述】:

我是一名开发多个 iPhone 应用程序的开发人员。我是我们 Apple 开发门户团队的管理员。我们团队的代理不是开发人员。我了解只有代理才能请求临时部署证书,并准备应用程序以进行临时分发。

我假设代理可以生成证书并将它们传递给我,以便我可以为临时分发配置和构建应用程序,但我读过关于在 xCode 中使用多个证书的恐怖故事。只是在设备上设置开发测试就够复杂了!

有人处理过这个问题吗?在 xCode 中使用多个证书有哪些陷阱?我想我还需要在我的钥匙串中拥有 Agents 的公钥和私钥。

【问题讨论】:

【参考方案1】:

这不是一场噩梦,它只会让人有点困惑,尤其是当您给自己的个人资料起无用的名称(例如“分发资料”)时。如果您希望在您的计算机上拥有多组配置文件、证书和密钥,请确保对它们进行命名,以便您知道什么与什么相配和属于什么。

我不久前发布了一些recommendations in this area。

我的第一条建议是为您的私钥提供描述性名称。幸运的是,您可以随时在 Keychain Access 中执行此操作。默认情况下,它们被简单地命名为“私钥”,如果您丢失了证书,您将不得不求助于openssl geekery 来确定哪个密钥与哪个密钥对应。

【讨论】:

我个人不能同意这不是一场噩梦的说法:)【参考方案2】:

您应该使用单独的开发和分发证书;您实际上为它们设置了不同的配置。当您使用几个不同的开发证书时,“噩梦”就来了。如果有人触动了 Debug 配置上的证书设置,则必须随后手动设置(当然,这很麻烦)。

所以不,团队代理给你他的分发证书和私钥没有问题(你需要两者)。不过,他需要意识到 Apple 会让他负责分发您的包裹。

【讨论】:

但是私钥不是和代理登录关联的吗?似乎我需要在我的计算机上为代理设置一个帐户,并安装代理的私钥,然后在登录到机器时使用 taht 登录进行构建... 他可以通过 Keychain Access 导出他的私钥并给你。就此而言,他应该至少将其导出一次,然后将其放入保险箱或其他东西中。【参考方案3】:

主要问题是您需要代理导出他们用来在门户上生成证书请求的私钥。门户网站上有备份和传输该私钥的说明……只有当您的系统上有该密钥时,您才能使用他们为 Ad-Hoc 创建的证书。

目前整个过程的文档都非常好,但您必须非常非常仔细地阅读它们,并按照每一个步骤来写信。

【讨论】:

以上是关于团队环境中的 iPhone ad hoc 分发的主要内容,如果未能解决你的问题,请参考以下文章

iOS Ad hoc 分发 - 关于 Apple 证书

iPhone Ad-hoc 分发同步错误

Ad hoc iOS 应用程序 - 无需 iTunes 即可分发

iPhone Ad Hoc Distribution Build 不适用于 3.x 设备

iPhone Ad Hoc 失败

我可以使用应用商店分发配置文件重新签署使用 ad-hoc 配置文件构建的 iOS 版本版本吗?