1

クラッシュレポート機能を追加するために、plCrashReporterをアプリの1つに統合しています。基本的に、クラッシュを検出した場合、クラッシュレポートをNSDataとして収集します...

NSData *crashData;
NSError *error;
crashData = [crashReporter loadPendingCrashReportDataAndReturnError: &error];

現在、crashDataにはレポート全体が含まれています。このcrashDataをPLCrashReport構造体にプッシュしてそのパラメーターを読み取ることはできますが、BLOB全体をサーバーに送信してそこで確認したいだけです。データが私に届くと、次のようになります。

706c6372 61736801 0a110801 1205342e 322e3118 02209184 82e80412
1b0a1263 6f6d2e73 6d756c65 2e545061 696e4465 76120531 2e362e32
1adb0208 00120618 d4a5f59d 03120618 bda5f59d 03120418 b5b96c12
0618df95 b09d0312 0618938b 9f9a0312 0618f9bb f68d0312 0618cdbc
f68d0312

私はこれから何か意味のあるものを得ることができませんでした。plcrashutilを使用してみましたが、うまくいきませんでした...

./plcrashutil convert --format = iphone example.plcrashクラッシュログをデコードできませんでした:無効なクラッシュログヘッダーをデコードできませんでした

また、Googleのprotobufを使用してみましたが、実行できませんでした。

私はdSYMファイルを持っていますが、これを象徴しようとしている段階ではありません。

Mac OSX10.6.5を実行しています。

どんなアドバイスでも大歓迎です。ありがとう!

4

1 に答える 1

2

これを整理しました!レポートは16進数で送信されますが、バイナリに変換すると、plcrashutilを介してレポートを適切に実行できます。これが私のHexToBinary.cppの実装です。

于 2010-12-11T00:32:44.520 に答える