为什么有项目和目标的代码签名构建设置,哪些优先?
我有两个目标 - 一个用于精简版,一个用于高级版。在创建ad hoc构建时,我很困惑为什么可以在2个位置编辑代码签名构建设置并且优先考虑?
答案 0 :(得分:1)
目标优先我相信。如果您在构建设置中从“合并”视图更改为“级别”视图,则会突出显示正在使用的哪个页面有很多帮助。
答案 1 :(得分:1)
目标构建设置(如果已定义)始终覆盖项目设置。您可以判断这些是否已定义,因为它们是粗体。
根据您不同目标的用途,它们可能需要一些不同的设置或许多设置。要创建一个极端的例子,假设你在同一个Project中为你的iOS游戏安装了基于Mac OS的编辑器。这两个目标将具有不同的体系结构,SDK,搜索路径,内存管理等。
或者,如果您的目标是同一个应用程序的精简版和高级版,那么它们之间几乎没有任何变化。
如果您发现自己更改了所有目标中的设置,则应改为在项目中更改该设置。您可以通过选择其中一个粗体构建设置并按删除键来取消目标中的覆盖。这不能撤消,因此如果您需要删除它,请确保知道该设置是什么。
如果是代码签名,请仅在项目中签署代码。
如果您最终将应用程序的自定义版本许可给其他公司,则需要使用不同代码签名的新Target,因此如果您需要,XCode可以执行此操作。