Google-code-prettify

2009/07/19

iPhoneアプリのデバッグ中にEXC_BAD_INSTRUCTIONで落ちて困った

SoftBank Creativeの「はじめてのiPhoneプログラミング」のサンプルアプリを作成しながら悩んだことのメモです。

相変わらずマヌケなことやってます。


アプリの起動直後に異常終了してしまって困りました。

Xcodeのウィンドウの下の方には"EXC_BAD_INSTRUCTION"と表示されます。


デバッガの使い方もよく分かっていないのですが、デバッガでブレークポイントを設定してブレークしながら実行していると、"EXC_BAD_INSTRUCTION"表示されます。

ブレークしないで実行しても、アプリが落ちるだけでXcode側には特に何も表示されません。

まだまだ覚えなければならないことが多そうです。


"EXC_BAD_INSTRUCTION"についてですが、どうやらアウトレットの接続ミスのようです。

以下のサイトを参考にさせていただきました。
iPhone SDK APP STORE公開までのアプリ開発まとめ。遥か遠い環境設定と開発の道。


Xcodeでアウトレットを作成した際、アウトレット変数の名前をdatePickerとすべきところをdataPickerにしてしまいました。
IBOutlet  UIDatePicker  *dataPicker;


アウトレット変数の名前を間違えたままInterface Builderでアウトレットを使用してしまいました。



その後アウトレット変数の名前を間違えたことに気付き、Xcodeでソースは下記のように修正しました。
IBOutlet  UIDatePicker  *datePicker;


しかし、Interface Builderの方は修正をせず、悪いことに修正をしなくてもビルドが通ってしまい、実行時に"EXC_BAD_INSTRUCTION"のエラーが発生してしまったようです。


我ながらお恥ずかしい限りです。

0 件のコメント: