我在我的应用程序上不断收到此错误。我唯一的错误是从后台状态恢复应用程序时。我需要一些帮助来找出错误所在。每当我从后台转到 Activity 状态时,无论 Activity 的ViewController是什么,它都会发生。

'由于未捕获的异常'NSUnknownKeyException'而终止应用程序,原因:[[ valueForUndefinedKey:]:此类不符合键响应的键值编码。

最佳答案

听起来像是在堆栈中的某处,正在通过NSString访问不存在的密钥。 valueForUndefinedKey是Objective-C的键值编码的一部分,也是NSObject的一部分。当valueForKey:在几乎任何对象上都无法解决时,可以调用它。

我看到以下任一情况最常引发该异常:

  • 具有XIB文件情节提要的类被重构,并且
    故事板或XIB不会。
  • 您遇到了一个主要的内存问题,即您要在已释放对象上调用方法,并且访问了错误的内存。
  • 这是一个有效的网络JSON API,该方法正在从JSON序列化错误的对象类型(例如,使用NSString而不是NSDictionary)。

  • 在Xcode的Breakpoint Navigator中的All Exceptions上设置一个异常断点,以便您可以在代码中找到确切的行NSUnknownKeyException被抛出。按(+)调出菜单。

    10-07 18:35