17

iPhone アプリがクラッシュした後にコンソールを起動すると、「認識されないセレクターがインスタンス 0x 何とか何とかに送信されました」と表示されることがよくあります。これがどの変数であるかを調べるにはどうすればよいですか? デバッガに方法はありますか?それは可能ですか?ありがとう。

4

2 に答える 2

21

gdb では、次のように入力できます

po 0x12345678

-descriptionそのアドレスにあるオブジェクトの を出力します。しかし、この情報が役立つことはめったにありません。代わりに、最初に例外のバックトレースを確認してください。これにより、問題の原因となっているコード行を見つけることができます。

于 2010-08-04T08:30:05.420 に答える
13

Exception ブレークポイントを作成すると非常に便利で、Xcode 7.3 ではこれまでになく簡単になりました。これは、例外の原因となっているコード行を見つけるのに役立ちます。

ここに画像の説明を入力

  1. アプリがクラッシュする行にブレークポイントを追加します
  2. Project Navigator メニューでブレークポイントをクリックします。
  3. 作成したばかりのブレークポイントを見つけて選択します
  4. 左下の「+」をクリック
  5. 「例外ブレークポイントの追加」を選択します

コードを実行します...「認識されないセレクターがインスタンス 0x 何とか何とかに送信されました」を取得するたびに、デバッガーは問題の原因となっている行で停止します。

于 2013-03-13T01:37:39.260 に答える