为什么xcode会忽略资产目录来源中符号链接的应用图标?

时间:2017-07-19 00:28:11

标签: ios xcode

我的iOS Project源文件夹中有以下结构:

resources:
ios/ mac/

resources/ios:
Images.xcassets/         Info.plist               LaunchScreen.storyboard

resources/ios/Images.xcassets:
Contents.json            LaunchImage.launchimage/ AppIcon.appiconset/

一切正常。如果我用一个具有完全相同内容的目录的符号链接替换目录AppIcon.appiconset,那么当我在Xcode中打开Images.xcassets时它只显示LaunchImage并且我得到一个构建错误,没有找到名为AppIcon的图标

这似乎是一个Xcode问题。这是一个bug还是设计?如果是后者,有没有办法呢?我真的不想在多个应用程序的源代码中拥有这些图像的多个副本。

我不能使用硬链接,因为代码是在git仓库中,所以除了原始仓库以外的任何东西都会在结账时结束多个副本。

2 个答案:

答案 0 :(得分:0)

如果Xcode拒绝从符号中复制资源,则可能无法执行此操作。但是,如果要严格保持图标同步,可以在项目中使用自定义shell脚本阶段,将图像资源从macOS文件夹复制到iOS文件夹。

另一种更简单的解决方案可以将图像分成特殊和常见的图标,并分享完整的“共同”图像。两个目标中的资产目录。

答案 1 :(得分:0)

您可以将AppIcon.appiconset创建为常规目录,并在每个共享的Contents.jsonpng文件中放置符号链接。这需要更多符号链接,但确实可以集中图像存储。