私はsymbolicatecrashを使用しようとしていますが、興味深い結果が得られています。同僚が私たちのディストリビューション ビルドを別のマシンでビルドしたので、dSYM ファイルを送ってくれました。にあるsymbolicatecrashファイルを実行した後
/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources/symbolicatecrash
それはすべての Apple 機能を満たしますが、私のものではありません。問題は、同僚のマシン情報が含まれている可能性があるため、dSYM ファイルが見つからない (または見つからない) ことのようです。クラッシュ レポートから 16 進アドレスをコピーすると、次のように dwarfdump を使用できます。
dwarfdump --lookup 0x0001f892 --arch armv6 パス/to/MyApp.app.dSYM
その単一の呼び出しの行番号が正しく表示されます。さらに、symbolicatecrash は私たちのコードからゲームの行番号を割り出すことができますが、Apple のコードからはできません。なぜ彼が Apple のものを見ることができないのか私にはわかりませんが、前述のように、問題は dSYM を見つけることにあると私は信じています。
そう。dSYMのパスをsymbolicatecrashコマンドに渡す方法、またはそれを機能させる他の方法はありますか? 真剣に、あなたのファイルをある種の魔法の「検索」を行うツールを作成するのは完全にばかげているからです。
また、同僚のビルドに Apple の機能が表示されない理由はありますか? 私がここにいる間、クラッシュ ファイルの "+" は何を意味するのでしょうか? このような:
0x00059f8c -[UIWindow sendEvent:] + 108