iPhone アプリのデバッグ中にエラーが発生し、アプリがクラッシュしました。例外ブレーク ポイントを追加しましたが、コード内のどこを指してもおらず、でクラッシュしましたmain.m
。
ここでは、アプリがクラッシュしたときの XCode ウィンドウのスクリーン ショットを追加しています。
これからクラッシュの正確な問題を見つけるにはどうすればよいですか?
出来ますか?助けてください。
ログにエラーの説明が表示されるように、Zoombie を有効にします。
ゾンビを有効にするスキームを編集する場合 ([製品] メニューで [スキームの編集] を選択)、左パネルの [Foo.app の実行] ステージに移動し、右。次に、NSZombieEnabled を「環境変数」セクションに追加し、Xcode 3 の場合と同様に、値を YES に設定します。
Xcode 4.1 以降では、「実行」ステージの「診断」タブに「ゾンビ オブジェクトを有効にする」チェックボックスもあります。
XCode で EditScheme をクリックします。すると下のような画面になります。Enable Zombie Objects をクリックします。ログにエラーが表示されます。
Exception ブレークポイントを追加すると、デバッガーはクラッシュした行で停止します。
確かではありませんが、レジスタを読むと役立つかもしれません。
最初に [例外] タブに移動し、左下隅の + を使用して [例外ブレークポイントを追加] を選択します。
次に、アプリがクラッシュしたら、スレッド 1 の下の「0 objc_exception_throw」をクリックします。
最後に、コンソールに次のように入力します。
register read (レジスタのリストを取得する必要があります)
po $rax (通常、例外は 'rax' にあります)
(コンソールに例外出力が表示されるはずです)
お役に立てれば。