我的应用在 iPad 模拟器上运行良好,但在 iPad(iOS 8.4)上崩溃,xcode 说无法在捆绑中加载 NIB

Posted

技术标签:

【中文标题】我的应用在 iPad 模拟器上运行良好,但在 iPad(iOS 8.4)上崩溃,xcode 说无法在捆绑中加载 NIB【英文标题】:My app works well on iPad simulator but crashed on iPad(iOS 8.4) ,the xcode says Could not load NIB in bundle 【发布时间】:2016-02-02 08:26:48 【问题描述】:

这是我收到的完整信息:

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle </private/var/mobile/Containers/Bundle/Application/EA93D8D1-339F-4007-A5AA-671461179671/******.app> (loaded)' with name 'a0J-YD-TZi-view-qwI-Ja-FwJ''

我搜索了很多关于“无法在捆绑中加载 NIB”的答案,我的情况似乎与这些不同,我从未在我的项目中使用过名为 a0J-YD-TZi-view-qwI-Ja-FwJ 的 nib .我的项目中有两个故事板(Main_iPad,Main_iPhone),该应用程序在 iPhone 和 iPhone 模拟器上运行良好。 任何帮助将不胜感激!

【问题讨论】:

【参考方案1】:

尝试重置模拟器并清理您的构建文件夹。

另一个问题可能是 nib 是在构建过程中复制到应用程序的捆绑资源的一部分。您能否检查该文件是否包含在 Copy Bundle Resources 构建阶段?

【讨论】:

【参考方案2】:

这可能是因为 ios 区分大小写,模拟器不区分大小写。确保使用正确的文件名,.因此,如果它在模拟器上工作但在设备上工作,请检查文件名上的大小写。

另一件事是,当您向项目添加新文件时,xcode 会自动将其添加到目标的“复制捆绑资源”部分。

有时,如果您与其他人合作,project.pbxproj 将不同步,并且此条目将被删除。修复方法是确保 Resources 文件夹中的所有文件(发行版中需要)也存在于“复制捆绑资源”部分中,如果不只是将其从资源拖到该部分。

【讨论】:

以上是关于我的应用在 iPad 模拟器上运行良好,但在 iPad(iOS 8.4)上崩溃,xcode 说无法在捆绑中加载 NIB的主要内容,如果未能解决你的问题,请参考以下文章

应用程序在 iPad 中崩溃但在 iPad 模拟器中工作正常

iPad 应用程序在设备上崩溃

xcode UI 自动化脚本在 iPhone 上运行良好,但在 iPad 上失败

UITabBar ios7 模糊无法在 iPad 3 上运行

在ipad上测试时,Xcode退出我的应用程序说“完成运行应用程序”

iPad模拟器上的应用程序崩溃