Warning: Multiple build commands for output file /Users/xxxxxXXXXXXXxxxxxxx.app/image.png
我知道NSBundle =>在NSBundle中,所有文件夹都是“组”,而不是实际目录,并且这些组中的文件仍位于软件包的根目录中.
在我的应用程序中,我需要在不同的“文件夹”中使用相同名称的图像来简化我的任务.
所以我的问题是:
>有没有办法在没有任何警告的情况下将两张图像保存在NSBundle的不同文件夹中?还有我如何获取它?
>如果我将应用程序上传到应用程序商店时没有出现此问题的任何问题?我的意思是,我的应用程序将被Apple拒绝?
解决方法
Xcode Groups vs. Folder References清楚地描述了它
组
>底层项目文件(project.pbxproj)的大小和复杂性可能会显着增长,尤其是对于多个目标.每个新目标都必须复制所有引用.您还必须记住为每个文件设置正确的目标成员资格.此外,由于更大和更复杂的项目文件,SCM合并冲突的可能性更大.
>组可能与磁盘上的文件夹层次结构完全不相似.您可以在Finder中拥有Xcode项目中甚至不存在的项目文件夹,反之亦然.由于不匹配,定位文件会让人感到困惑
>如果移动文件或将其重命名为Xcode,则引用会中断并且文件变为红色.文件管理变得非常痛苦.
文件夹参考
文件夹引用的好处是:
> Xcode仅存储对文件夹的引用.它的所有文件和子文件夹都会自动添加到项目中.这使项目文件更小更简单,合并冲突的可能性更小.>如果您在文件系统中重命名,删除或移动文件,Xcode会自动更新文件夹引用以反映更改.文件管理因此容易得多.由于项目中的文件夹层次结构与磁盘上的层次结构匹配,因此它们不会随着时间的推移而发生分歧并导致混淆.>您不必担心名称冲突,因为目录结构保留在产品包中.两个文件可以共享相同的名称,只要它们位于不同的目录中即可.