iPhoneのクラッシュログを解析してみる

iPhoneのクラッシュログを解析してみる

アプリ開発をしているとXcodeでは問題ないのに、
実機だとアプリが落ちるというようなことはよくある話かと思います。

先日もiOS7の実機でのみ発生するという現象が発生したのですが、
ソースを確認しても原因がわからなかったため、
実機から取得したクラッシュログでデバッグを行いました。

前提条件

クラッシュログを解析するためには2つのファイルが必要になります。

1.dSYMファイル
ビルド時に出力されるデバッグシンボルファイル。デバッグ情報が含まれます。

2.crashファイル
実機から取得したクラッシュログファイル。

取得方法

1.dSYMファイル
organizer
Xcodeのオーガナイザーから、対象のビルドを右クリックし、Show in Finderを選択。
対象のビルドが表示されたら、右クリックで、パッケージの内容を表示を選択。

dSYMSsフォルダ内にアプリ名.dSYMファイルがあるので、
分かりやすい場所にコピーしておく。

2.crashファイル

実機をiTunesで同期するとMac内に勝手に取り込まれる。

ユーザー/Library/Logs/CrashReporter/MobileDevice/iPhoneの名前に、
アプリ名_日付_iPhoneの名前.crashというファイルがあるので、これも1.と同じ場所にコピー。

変換する

.crashファイルだけでは意味がわからないため、.dSYMファイルを使ってデバッグシンボルを付与する。

/Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/
Versions/A/Resources/symbolicatecrash アプリ名.crash アプリ名.app.dSYM/ > debug.log

これで実際にエラーが起きたプログラムの箇所が特定できるようになります。

TAG

  • このエントリーをはてなブックマークに追加
しょぼん
取締役 しょぼん syobon

最近エネルギーの90%を卓球に向けています。