在多台计算机上开发iOS应用,但只在单个设备上进行测试,有什么建议?

46

我正在寻求有关配置文件/证书等方面的建议... 我在工作中使用iMac进行开发,但有时我也会从git上检查我的代码,并在家中使用MacBook Pro,但每当我想从另一台计算机上的iPhone上进行测试时,总是会遇到问题。

显然,设备上的配置文件与从工作中心颁发给我的iMac的证书相匹配,因此从我的笔记本电脑上,我无法在设备上进行测试,因为配置文件不匹配证书,所以我会遇到代码签名错误。

我该怎么办才能绕过这个问题?

提前感谢。


Test Flight App可能会派上用场。 - tipycalFlow
5个回答

75

苹果提供了一种简单的解决方案,可以在多台设备上工作。

您可以从工作的iMac上导出您的开发者配置文件并将其移动到Macbook Pro上。

  1. 在Xcode 4中,打开组织者。点击“设备”/

  2. 现在,在侧边栏中点击“开发者配置文件”。

  3. 然后,在屏幕底部,您将看到一个名为“导出”的按钮和一个名为“导入”的按钮。在具有原始证书的计算机上,点击“导出”并保存配置文件。您可能需要输入密码。

  4. 在第二台计算机上,使用“导入”来安装证书。

Exporting a developer profile

现在,您应该能够在两台机器之间无缝开发和测试。

编辑:

根据Topher Fangio下面的评论中所说,您可能需要:

打开钥匙串访问,然后在我的桌面上找到 [您的] iPhone 开发者证书,然后导出它。然后在您的 [第二台机器] 上导入它。如果您在一台机器上看到了下拉菜单和相关的私钥,但在另一台机器上没有看到,则显然需要导出它。

希望 Topher 的见解能帮助任何遇到使用 Xcode 进行此操作有困难的人。


非常感谢,我记得有一段时间前在组织者里见过这些按钮,现在感觉很傻没有记住并尝试一下就问问题了,下次将不得不再忍耐一会儿。谢谢你。 - Daniel
1
当然,没问题。我一直想要规范化这种类型的帖子,感谢您提供这个机会。 - Moshe
5
仅做注明:这篇帖子对我没起作用。最终我需要打开钥匙串访问,找到桌面上的我的 iPhone 开发者证书,将其导出,然后在我的笔记本电脑上导入它。如果你在一台机器上看到了下拉菜单和相关的私钥,但在另一台机器上没有,那么显然需要导出它。这解决了我的问题。 - Topher Fangio
太好了,在Xcode 5中我找不到这个功能,但我通过从KeyChain中导出并在第二台电脑上双击导入的方式解决了问题。谢谢。 - Ege Akpinar
但是,如果我们暂时无法访问已设置帐户的其他 Mac,并且想在新 Mac 上紧急处理一些事情呢? - Min Soe
显示剩余5条评论

10
如果您正在使用 Xcode 6.x - 8.x 版本,有一种非常简单的方法可以实现此操作:
请查看 应用分发指南 的标题为“导出和导入证书和配置文件”的部分。
总结如下:
  1. 进入 Xcode 的偏好设置
  2. 点击账号
  3. 在左下角点击齿轮图标
  4. 选择 'export accounts' 并输入所需的文件名和密码
  5. 在新机器上打开新创建的文件
完成!这将从旧设备导入配置文件。

但是,如果我们无法访问设置了该帐户的 Mac,怎么办呢? - Min Soe
在这种情况下,您可能需要重新创建配置文件。如果您的问题不适用于多台机器,则该问题与此问题无关。 - Julian B.
它仍然是多个机器。假设我在办公室有一台iMac,并且所有源代码都在云端。因此,每次我回家时,关闭iMac并且出现紧急情况,我必须在家工作,但我的MacBook上没有设置帐户。这不算多个机器吗? - Min Soe

3
我有Xcode 4.6.1,在组织者中现在有一个底部右侧的刷新按钮。点击它,登录您的Apple帐户,它应该拉取所有相关的配置文件信息。
-干杯

1
也是一个不错的解决方案。但标记为正确的答案还将导入其他配置文件和证书。如果您在多个团队中工作,可以导出整个组合 - 对于自由职业者或白标工作来说并不罕见。 - Daniel
非常好的观点,@Daniel。我忘了提到我需要从生成签名请求的计算机上导出我的开发者证书,并在另一台计算机上导入它。 - swift taylor

3
你需要将你在门户网站上创建的原始私钥文件和证书文件作为整个过程的绝对第一步保留下来。然后,在您的笔记本电脑上导入的不仅是证书,还包括私钥文件。完成后,您应该能够在两台笔记本电脑上使用开发人员证书和预配文件进行签名。
我也曾遇到过这种情况。如果需要,您可以在预配门户网站上重新开始,而没有真正的负面影响。

这听起来像是我需要的,我得等到周一才能尝试,在那时我可以进入iMac并获取我的私钥文件。你所说的私钥文件是指我在获取证书之前使用Keychain生成的证书请求文件吗? - Daniel

1
这个答案似乎不适用于Xcode 4.6.3,因为组织者没有“开发者配置文件”部分。
在发布时,大多数人将使用Xcode 5和6,其中有一个不同的程序,可以在这里讨论。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接