2014年2月4日火曜日

続・Xcodeから実機転送した場合とAppStoreからダウンロードした場合で挙動が違うことはありうるか?

前回の続き。

なんて低レベルなオチなんだ。ファイルバージョン関係ないやん。
結局、ビルド時のdebug/releaseのモードの違いだった・・・。

直接的な不具合原因としては、「bool型変数の初期化漏れ」
発生事象は、
 「debug実行時(テスト時)はYESで初期化された」
 「release実行時は初期化されず不定(FALSE?)」
となった。

知ってたつもりで分かってなかったので、
検索結果:xcode debug release 違い
とか、
Xcode Difference between debug and release
をもろもろ調べてみる。

objective-cに限らず、debug/releaseの違いといえば
「ステップ実行できるか」「変数情報が表示できるか」などだと思うのだけど
こういう挙動の差異も生じるらしい・・・。
調べても出てこんぞー?

今回の場合 、
「変数の初期化漏れ」「releaseビルドで試験していない」という怠慢が招いた結果。

一人でデカイ開発とか限界あるよなあ・・・。
せめてコードレビュー誰かしてくれ。

0 件のコメント:

コメントを投稿