当我的应用被Apple拒绝时,我得到了这个解释:
无效的文件名 - 您的软件包包含一个文件'XXXX.app/en.lproj/MainStoryboard.storyboardc/.nib',其名称包含无效字符。避免在文件名中使用控制字符。还要避免在文件名中前导或尾随空白字符。
这是什么.nib文件以及如何解决此错误?
我在cd
文件夹中MainStoryboard.storyboardc
并且文件?.nib
,但是当我按cat <tab>
时,我必须输入^V.nib
。
答案 0 :(得分:1)
我可以确认@ PPCC的答案有效。我找到文件夹时遇到了一些麻烦,所以我想在这里分享一下。我认为最简单的方法是转到项目的派生数据。在Xcode中,转到Window-&gt; Projects,然后您可以看到派生数据在您的项目所在的位置。
所以我的.nib文件位于/Build/Products/Debug-iphoneos/.app/.storyboardc
我找到了一个名为&#34; ??。nib&#34;的文件。我使用了&#34; cat&#34;命令在命令行中打开它,然后在那里扫描.nib文件所属的viewcontroller的信息。然后我从故事板中删除了该viewcontroller并再次创建它。我确保指定一个故事板ID。然后我清理了项目并重建了它。它没有再次创建.nib文件,之后我没有遇到任何问题。
希望这有助于某人。
答案 1 :(得分:0)
我最终重建了我的整个故事板。值得庆幸的是,我的课程完好无损,所以只花了大约15分钟
答案 2 :(得分:0)
我遇到了同样的问题,我不想再重新制作所有的故事板文件,因为它非常难。
最后我解决了它,如下所示:
问题是在目录中有一个名为“.nib”的文件会自动创建“myAppName.app/MainStoryboard_iPhone.storyboardc”。 据推测,在编译应用程序时,会自动创建此目录,并在其中创建与我的故事板中包含的所有视图相关的大量文件。
文件“.nib”很难找到,因为MacOs认为它是一个隐藏文件,因为它以一个点开头。
在能够打开.nib文件之后,我看到它就像一个xml文件,我认识到我的一个视图的故事板标识符在我的故事板上。
之后我删除了.nib文件,并删除了故事板中的视图。重新编译应用程序后,未创建.nib文件。
所以,我在我的故事板中添加了另一个视图,并像之前那样重新设计了它,并且还添加了相同的故事板标识符。只有一个观点。
之后应用程序编译得很好,没有创建.nib文件,应用程序已通过Apple第一次修订(现在正在等待审核)。
因此,可能在XCode中存在一个错误,它会通过错误创建一些故事板视图的.nib文件。
我希望如果有人遇到同样的问题,将来可能有所帮助。
答案 3 :(得分:0)
我相信我可能通过删除'with bitcode'选项来解决我的问题。需要进一步测试
答案 4 :(得分:0)
作为所有其他答案的补充:在我的情况下,故事板文件中有一个'storyboardIdentifier',带有换行符。删除此标识符可解决此问题。