我最近参与了一个拥有iOS开发组织帐户的小组。
他们有多个团队都在开发独立的iOS应用程序。我有点惊讶地发现,使用该组织的iOS发行版并没有任何协调。证书。相反,无论开发人员需要提交构建版本,只需创建一个新构建版本,在必要时撤销一个或多个现有构建版本(Apple似乎允许其中三个中的有限供应为"同时生活"同时)。这种做法的理由似乎是以下观察结果的组合:
然而,我观察到这种快速分发证书流失政策的一个非常严重的负面后果是,testflight构建根本不会长时间保持有效,并且tesflight用户发现自己会收到有关无效证书或拥有应用程序的对话框#39;应该是testflight的测试人员,他们很快就会从testflight中消失。 (事实上,也可以在同一行中看到this question)。
鉴于Apple明确将testflight视为appstore基础架构的重要组成部分,我发现很难相信这个组织正在以苹果实际上打算完成任务的方式开展工作。 能够对正确的做事方式有所了解的人能够启发我吗?
如果我的术语在以上某些内容中没有了,我会道歉...我只是涉足这个问题。
答案 0 :(得分:5)
正确的方法是拥有一个分发证书并共享私钥。我们共享一个小钥匙串,其中只包含我们组织中开发/分发所需的私钥和证书。你可以添加这个' stub'所有开发机器的钥匙串,如果它被检入版本控制,您可以轻松地向所有人推送更新。您也可以使用密码进行密码保护,在这种情况下,Xcode会要求您在使用代码签名时将其解锁。
它很容易"转发证书实际上是一件坏事,IMO。正如您所观察到的那样,团队中的其他开发人员很容易搞砸了,特别是关于TestFlight,尽管我最近从其他开发人员那里听说Apple可能已经解决了这个问题。 (我自己也没有证实过。)