何时检查"如果需要,复制项目"嵌入式二进制文件?

时间:2016-07-17 19:35:06

标签: ios xcode

enter image description here当我尝试将第三方框架(由carthage安装)放入嵌入式二进制文件中时,我有了这样的选择。我感到困惑,因为"嵌入式二进制文件是在构建项目时复制到应用程序包的二进制文件",它已经是副本而不是链接,为什么我要复制副本?

3 个答案:

答案 0 :(得分:8)

“如果需要,复制项目”与构建应用程序无关。这意味着立即复制到项目文件夹中(如果它已经不在项目文件夹中)。我建议你总是说是,因为否则你的项目可能最终会取决于项目文件夹中没有的东西,因此你可能会因此意外丢弃或重命名,从而导致项目中断。

答案 1 :(得分:1)

就像亚特说的那样,我建议你也总是选择它。我上传应用程序时遇到了麻烦,即使我知道我没有移动或重命名该文件。启用它的另一个好处是,它可以更轻松地与其他人共享项目,而无需追踪不在项目文件夹中的文件。

我可以看到两种情况,为什么把它关掉可能很方便:

  1. 您有多个项目共享同一个文件,并希望减少空间,
  2. 您迫切需要节省计算机空间,在这种情况下,我会为您的计算机购买额外的存储空间。
  3. 编辑:即使您复制了该文件,XCode也会将其视为该文件的链接,这就是您看到此消息的原因。

答案 2 :(得分:0)

Copy items if needed通常(但并非总是如此,例如项目已经包含该项目)将文件复制到您的项目目录中,因此您可以安全地使用relative path(而不是绝对值)。例如,当您使用某些版本控制时,您的团队成员将不会遇到解决路径问题的麻烦

对于第三方框架,您可以在$(PROJECT_DIR)中使用Build Settings -> Framework Search Paths

Create groups vs Create folder reference