2011-10-19 12 views
0

assertステートメントが、スタックトレースを使用して、iTunes Connectでクラッシュするクラッシュレポートを生成できませんでしたか?アサーションとキャッチされない例外はクラッシュレポートを生成しますか?

NSAssertと同様のことを知りたいと思います。また、キャッチされていないC++/Obj-C例外も知りたいと思います。

私は内部整合性とロジックエラーのためにアサーションを使用していますが、ファイルエラーのようなものではありません。

エラーレポートが生成されない場合は、カスタムマクロ、例外ハンドラなどで作成する方法がありますか?私はスタックトレースを得ることができることが重要です。

答えて

0

はい、キャッチされない例外はクラッシュレポートを生成します - 私はiTunes Connectクラッシュレポーターから1つを探しています!基本的には、アプリケーションをクラッシュさせてログを保存させるほとんどのものは、レポートをAppleに送り返します。言っ

、あなたはそれについて心配している場合a)はAppleと診断情報を共有することを選ぶだけで、ユーザーが戻ってiTunesのConnctにクラッシュレポートをお送りしますので、あなたが、クラッシュ報告のために、独自のハンドラを実装することもできますb)クラッシュレポートでも、レビューの対象となることを保証するものではありません。

既存の解析パッケージ(Flurryはこれをサポート)を使用して、キャッチされていない例外ハンドラを使用してこれを行うか、可変品質のオープンソースライブラリを使用することができます(here's one I've found online - 私は独自のコードを実装しています。

+0

私はassertとC++/Obj-C例外を試して、XCodeのOrganizerの "Device Logs"を見ました。私は彼らが本当に失敗の原因を突き止めるスタックトレースを生成していることを確認できます。ただし、例外の種類とメッセージは記録されません。 –

+0

クラッシュハンドラの実装や使用に時間がないかもしれません。しかし、私は、少なくとも私のパートで追加のプログラミング作業をすることなく、あらゆるタイプの未知の例外についてiTunes Connectのクラッシュレポートを取得できることを知ってうれしいです。 –

1

標準Xcodeテンプレートのいずれかを使用している場合、Xcodeはデフォルトでリリースビルド用にNSAssert()マクロを無効にします。あるいは、ビルド設定でOther C++ FlagsにNS_BLOCK_ASSERTIONSフラグを追加することで、自分自身を無効にすることができます。

+0

お役立ち情報アサーションが無効にならないように、リリースモードのビルド設定を編集しなければなりませんでした。 –

関連する問題