Ios 需要三次XCode4代码签名吗?

Ios 需要三次XCode4代码签名吗?,ios,xcode4,ios-provisioning,provisioning-profile,Ios,Xcode4,Ios Provisioning,Provisioning Profile,当我要进行临时构建时,我需要在临时的目标设置、临时的项目设置中设置资源调配配置文件,最后在构建并准备分发时,我单击新的组织者弹出窗口“分发”,并需要再次设置临时配置文件 我想我在这里缺少一些理解,为什么我需要设置此配置文件3次?不是只有一个地方我可以进入(比如在组织者/分发按钮阶段)吗 当然,如果这确实是一个过程,那么有人能解释为什么需要3次吗?首先,目标设置将覆盖项目设置。构建设置与CSS类似,通过在查看目标的构建设置时启用“级别”选项,您可以更清楚地看到这一点: 绿色突出显示的框显示最终解

当我要进行临时构建时,我需要在临时的目标设置、临时的项目设置中设置资源调配配置文件,最后在构建并准备分发时,我单击新的组织者弹出窗口“分发”,并需要再次设置临时配置文件

我想我在这里缺少一些理解,为什么我需要设置此配置文件3次?不是只有一个地方我可以进入(比如在组织者/分发按钮阶段)吗


当然,如果这确实是一个过程,那么有人能解释为什么需要3次吗?

首先,目标设置将覆盖项目设置。构建设置与CSS类似,通过在查看目标的构建设置时启用“级别”选项,您可以更清楚地看到这一点:

绿色突出显示的框显示最终解析设置的来源。因此,在上面的屏幕截图中,您可以看到代码签名取自目标设置。项目级别的值将被忽略/覆盖

通常情况下,您希望避免使用这些多级设置,因为这样会造成混乱,并且您有冗余信息

您的调试标识应该几乎总是在“自动概要文件选择器”组下设置为“iPhone开发者”,并且应该在项目级别定义(因为它对于所有目标都是相同的)。通过在目标设置中选择条目并点击delete,可以在目标级别删除此设置。绿色突出显示现在应显示在项目级别:

对于您的发行版和临时配置,您可能确实希望在目标级别选择特定的签名标识,因为理论上,您可以在一个具有不同设置的项目中有多个应用程序目标。在项目级别,最好选择通用的“iPhone分发”(自动配置文件选择器)选项,然后该选项将被覆盖

当您在命令行上构建应用程序或从Xcode归档应用程序时,应用程序将使用这些设置构建和签名,并嵌入适当的配置文件

如果您从管理器中选择“分发”选项,则此存档应用程序可能会完全退出,这就是再次提示您输入配置文件的原因。这意味着第三方开发人员可以为您开发应用程序,使用他们自己的签名信息将其存档,发送给您,然后您可以使用自己的私钥和app store的配置文件退出


应该可以跳过这最后一个辞职阶段,但我猜过去有太多人犯了错误,所以Xcode只是接手了,然后为您重新做了一切。

感谢您编写了如此全面和出色的答案,发行版辞职的最后一部分对我来说是一个主要的困惑。似乎在项目或目标的“分发”部分中添加任何内容都是不必要的。如果我理解正确,我似乎可以将project/target distribute provisioning profile设置为“X”(或不设置),但当它在organizer->distribute中弹出时,我可以将该配置文件完全更改为“Y”,并且它可以工作吗?如果我误解了这一点,请告诉我,尽管这看起来很奇怪,您可以在target/projectIn理论中设置dist/adhoc配置文件是的,您可以在项目/目标设置中配置完全不同的“X”,然后在组织者的分发阶段选择“Y”。您必须记住,组织者的分发功能一度不存在。应用程序是使用项目/目标设置构建的,这就是开发人员提交到应用商店的内容。例如,如果您是从命令行构建应用程序,这种情况仍然存在。