2

アプリでこのエラーが発生し続けます。エラーが発生するのは、アプリをバックグラウンド状態から再開したときだけです。エラーがどこにあるのかを理解するのに助けが必要です。これは、アクティブなViewControllerが何であっても、バックグラウンドからアクティブに移行するたびに発生します。

キャッチされなかった例外'NSUnknownKeyException'が原因でアプリを終了しています。理由:'[<__ NSCFString 0xc063200> valueForUndefinedKey:]:このクラスはキー応答のキー値コーディングに準拠していません。

4

1 に答える 1

5

スタックのどこかで、存在しないキーがNSStringでアクセスされているようです。valueForUndefinedKeyはObjective-Cのキー値コーディングの一部であり、NSObjectの一部です。valueForKey:ほとんどのオブジェクトでうまくいかないときに呼び出すことができます。

次のいずれかの場合に、例外が最も頻繁にスローされることがわかります。

  1. XIBファイルのストーリーボードを持つクラスはリファクタリングされますが、ストーリーボードまたはXIBはリファクタリングされません。
  2. 割り当てが解除されたオブジェクトでメソッドを呼び出していて、間違ったメモリにアクセスしているという大きなメモリの問題があります。
  3. これは動作中のネットワークJSONAPIであり、メソッドはJSONからシリアル化された間違ったタイプのオブジェクトを取得しています(たとえば、NSDictionaryではなくNSString)。

XcodeのBreakpointNavigatorですべての例外に例外ブレークポイントを設定して、コード内の正確な行NSUnknownKeyExceptionがスローされていることを確認できるようにします。(+)を押してメニューを表示します。

ブレークポイントナビゲーター

于 2013-03-27T02:28:35.090 に答える