我已将一个项目分成两个版本,并为每个版本分配一个plist
文件。一切正常,但我不断得到这个构建警告:
警告:Copy Bundle Resources构建阶段包含此目标 Info.plist文件'MyApp-Info.plist'
当我尝试构建MyApp
时,我得到了这个。为第二个目标构建会产生相同的错误(警告中为SecondTarget-Info.plist
)。我不确定为什么它是一个警告,因为我希望构建包含.plist
文件。每个.plist
文件都有一个目标成员资格(对于他们自己的构建)。
这个警告意味着什么?有没有办法让它消失?
答案 0 :(得分:584)
https://developer.apple.com/library/content/qa/qa1649/_index.html
摘录:
您收到此警告是因为您可能已将Info.plist文件添加到Copy Bundle Resources构建阶段,如图所示
INFOPLIST_FILE构建设置指定与目标关联的Info.plist的名称。构建目标时,Xcode会读取此构建设置并将引用的Info.plist复制到应用程序包中。因为Xcode自动处理Info.plist,所以不应将其添加到Copy Bundle Resources构建阶段或将其作为目标成员。
要解决此警告,请从Copy Bundle Resource构建阶段中选择Info.plist,如图1所示,然后单击Remove( - )按钮将其从阶段中删除。
答案 1 :(得分:65)
修复xcode 4:
1)通过选择并点击删除来删除对info.plist文件的引用。
2)再次添加info.plist文件但不选择目的地并取消选中“添加到目标”选项。
答案 2 :(得分:2)
如果有人使用Xcode 3遇到此问题,要修复它,请单击“组和文件”下左栏中的.plist文件,然后在右上角区域中取消选中.plist文件名称旁边的框在靶心图标下的列中。您需要缩小编辑器(查看 - >缩放编辑器输出)以显示复选框。
答案 3 :(得分:0)
另一个解决方案是:
您可能不小心从“目标成员资格”核心数据中删除了项目文件。
从左侧的项目导航器中选择Main.storyboard
转到右侧的“文件检查器”(第一个标签)
找到“目标会员”列表
启用复选框
花一点时间进行处理,但是在您处理的同时,还要检查项目中的LaunchScreen.storyboard,.xcdatamodelid,Assets.xcassets和所有.swift文件。它们应该都已启用为目标成员身份。
注意:Info.plist不应启用目标成员身份。
希望这会有所帮助。
答案 4 :(得分:0)
对我来说,这与ionic framework post
有关唯一的区别是我改变了
ValueError: Error when checking input: expected flatten_4_input to have 3 dimensions, but got array with shape (1, 4).
到
CODE_SIGN_IDENTITY = iPhone Distribution
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution
根据 Xcode 自己的建议,而不是帖子中描述的“iPhone Developer”。另外,我使用的是cordova而不是离子。如果您也是,此文件位于 CODE_SIGN_IDENTITY = Apple Development
CODE_SIGN_IDENTITY[sdk=iphoneos*] = Apple Development
ps:记住将项目的签名设置设为自动(即使取消/再次检查也有帮助)
答案 5 :(得分:-1)
就像一张纸条......我会尝试写一篇关于它的好雷达,但在Xcode的Storyboards中处理本地化的方式真的很奇怪。如果您询问"在Finder"中显示,您将无法看到您选择的.storyboard文件,而是包含其包含的文件夹。我认为这与故事板的本地化有关。一旦我将它从英语改为德语(因此在root或en.lproj中没有该文件),我就开始遇到麻烦了。