【发布时间】:2012-04-15 05:45:26
【问题描述】:
尝试使用 Xcode 4.3.2 构建和调试适用于 iOS 3.0 的通用应用程序。我从 NSKeyedUnarchiver 收到 NSException。似乎这可能与无法读取主 .xib 文件有关。我已经看到了这个:iOS and unarchiving xib files - 但是,在这种情况下,不清楚该应用程序是通用的(他们的解决方案不起作用)(注意:他们的解决方案不起作用,因为他们使用的是 Xcode 4.2,而不是 4.3) .
这是错误输出:
2000-01-01 11:00:39.-19 myApp[664:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSKeyedUnarchiver initForReadingWithData:]: incomprehensible archive (0x4e, 0x49, 0x42, 0x41, 0x72, 0x63, 0x68, 0x69)'
2000-01-01 11:00:39.-01 myApp[664:207] Stack: (
808001701,
805397928,
807551015,
807550919,
810902709,
815043196,
815042704,
814682908,
814682012,
814970032,
814968048,
814966908,
839149932,
807750263,
807747947,
814678868,
814672532,
12253,
12124
)
terminate called after throwing an instance of 'NSException'
Not safe to look up objc runtime data.
【问题讨论】:
-
所以为了清楚起见,您已将所有 XIB 文件设置为该答案中指示的设置?
-
我不知道你是否必须 - 但我确实将每个文件的部署和开发都设置为 3.0。我还尝试将 iPad .xibs 设置为 3.2。无论如何,在 iOS 3.0 上调试时出现上述错误。
-
3.2 仍然大于 3.0。如果这是可以达到的最低值,那么您可能必须考虑将 XCode 降级到 4.2.1 才能匹配该答案中显示的设置。如果你不想降级,那么你必须考虑提高你的最低 iOS 版本,我猜。
-
您误会了——我将所有 .xib 设置为 3.0 以进行部署和开发。我还尝试仅将 iPad .xibs 设置为 3.2(因为那是第一个支持 iPad 的操作系统)。这些都不起作用。
标签: ios xcode nsexception