4

xcode を使用して Objective-C/Cocoa で記述された OSX アプリケーションがあります。アプリケーションは完全に完成し、テストされ、App Store で販売されています。

私はしばらくこのアプリケーションに取り組んでいませんでしたが、最近、OSX 10.7.4 で xcode 4.3.3 を使用して再構築しました。ビルドは問題なく行われますが、アプリケーションを実行すると、非常に奇妙な視覚的な不具合が発生することに気付きました。アプリケーションを閉じるときに EXC_BAD_ACCESS が表示されることがあります。これらはすべて、私が使用している PDFKit フレームワークに関連しているようです。グリッチは視覚的なもの (コードでチェックできるものは何もない) であり、EXC_BAD_ACCESS 例外はコードに関連しない内部的に割り当てられたオブジェクトから発生するため、これらの問題をデバッグできません。

コード自体は変更されていません。コードの以前のリビジョンを試してみましたが、現在はすべて同じ奇妙な動作を示しています。私が持っているアプリケーションの古いバイナリ (数か月前にコンパイル) を実行してみましたが、問題なく動作します。次に、4.2.1までの以前のバージョンのxcodeでビルドしようとしました(アプリをアプリストアに送信したときに問題がなかったことがわかっています)が、それでも問題が発生します。

次に、これが私の環境に固有のものである可能性があるのではないかと疑ったので、xcode 4.3.2 と OSX 10.7.4 を使用して別のマシンでプロジェクトをビルドしました。結果は同じで、問題はまだ残っています。

したがって、OSX 10.7.4 の更新と関係があると思われます。これは、現在からアプリケーションの適切なビルドを作成できるようになるまでの間に最後に変更されたものであるためです。次に何をすべきか、この問題の原因を特定する方法について、かなり困惑しています。正常に動作している古いバイナリがあり、問題のある同じコード リビジョンの新しくコンパイルされたバイナリがあります。

これらのバイナリの違いから得られる有用な情報はありますか? これらの問題の原因を特定するにはどうすればよいですか? 次に何を試すことができますか?

ありがとう!

注(更新):上記で述べましたが、明確にしたいと思います。これは Mac OSX Cocoa アプリケーションであり、iOS ではありません。

4

4 に答える 4

1

あなたの顧客が同じ問題を抱えていないことを確信していますか? 別のマシンでアプリケーションをテストしたので、破損したライブラリがインストールされていない可能性があります (ゼロからインストールしたのではなく、何らかの移行ツールを使用した場合を除きます)。それはおそらく問題ではありません。

私にとって最も論理的な説明は、あなたの顧客もこの問題を抱えているが、まだ報告していないということです。その場合、おそらくメモリの問題があり、それを攻撃する手法があります。

いずれにせよ、問題を単純化するために除外できるすべてのパラメータを除外してください。問題が発生しなくなるまでアプリケーションを解体するか、問題が再発するまで別のプロジェクトでアプリケーションを再構築します。

厄介なように聞こえますが、忍耐と忍耐力があれば、最終的にそこにたどり着きます:)

于 2012-06-28T16:29:44.083 に答える
1

シミュレーターをリセットしてから試してください。

ARC情報をご確認いただければ幸いです

プロジェクトのターゲット セット ビルド設定に移動します --> 検索パス --> 常にユーザー パスを検索する設定 はい。

そして、すべてのクラス変数が互いに異なることを確認してください。

Xcode - >設定 - >ドキュメントチェックインストールされたコアライブラリ(または)そのようにインストールしますXcode - >設定 - >コンポーネントは、必要なコンポーネントがインストールされているかどうかを確認します

プロジェクトでこれらのことを確認してください。

于 2012-06-28T12:53:09.587 に答える
1

まず、疑わしいコンパイラの警告がないか、ビルド ログをチェックして検証する必要があります。

EXC_BAD_ACCESS については、XCode 分析により有用な情報が得られます。

10.6 または 10.5 (手動インストールが必要) SDK を試すことができます。または、展開ターゲットを 10.5 または 10.6 に制限します。

于 2012-06-29T04:40:27.830 に答える