私は奇妙な問題を抱えています。iPadアプリがクラッシュする4.2ディストリビューションビルド
iPadストアのiPadアプリがあります。これは、3.2が唯一 のiOS for ipadだったときにリリースされました。アプリはこのiOSで正常に動作しましたが、ipad の4.2.1が出てすぐに新しいユーザーに更新されたユーザーの一部は、 のUIBarButtonItemを押すとクラッシュします。それは 各iOSの上で実行されているとまったく同じアプリをしたので、iOSの 4.2.1が出てきたときにiOSの3.2から暫定的に私が主催でsymbolicatingと表示した後、まだ私が唯一の4.2
上でこの問題を抱えていた何の更新を提出していません配布ビルドクラッシュレポート 私は少なくともこれを引き起こしているコードの行を参照することができるよ...
while(i < [filteredData count]) {
のthatsそれは!! ... whileループの中だけの簡単なチェック。クラッシュの最後のもの ログは上記のコード行を指しています....
filteredDataは、この時点で に確実に割り当てられ/初期化されたNSMutableArrayです。これは実際には の問題がないこのコードの別の部分で使用されています。 は再び、このコード行は、iOS 3.2に何の問題私のアプリを与えなかったが、iOSの上で私は、デバッグでXcodeのを経由して自分のデバイスにアプリをインストールするか、それが動作設定を解除するとEXC_BAD_ACCESS(SIGSEGV)
を引き起こし それを4.2.1完璧だが、AppStore(ディストリビューションビルド)からインストールすると、クラッシュし、4.2でのみ! 3.2
アプリのデバッグと分布のモードで完璧に動作し
アプリ
だけ明確にする
は..... 4.2に配布モードで4.2 BUTアプリがクラッシュにデバッグモードで完璧に動作します何かご意見は?私は混乱しているcuzを..... /あなたが
デバッグ
で問題を得ることができますいけない、特にとして
ターゲットの情報のビルドタップに入ると、ディストリビューションとデバッグの設定にはどのような違いがありますか? (フィールドに違いがあるかどうかを確認する方法は、「すべての設定」を選択し、スクロールダウンして、「複数の値」またはチェックマークでダッシュを探します) –
予想されるパスの違いを確認します。ディストリビューション - iphoneos)。 "ビルド済み製品の検証"は、デバッグ時ではなく、配布時にチェックされます。 "コピー中にデバッグシンボルを取り除く"という設定は、配布時にチェックされますが、デバッグ時にはチェックされません。デバッグでは「最適化レベル」は「なし」、配布では「最速で最小」です。他のCフラグとC++フラグは両方ともデバッグ時に空白ですが、配布時には "-DNS_BLOCK_ASSERTIONS = 1" – freddyD