iPhone アプリのクラッシュレポートを象徴化してみたいと思っています。
iTunes Connect からクラッシュ レポートを取得しました。App Store に送信したアプリケーション バイナリと、ビルドの一部として生成された dSYM ファイルがあります。
これらのファイルはすべて、Spotlight によってインデックス付けされた単一のディレクトリ内にまとめられています。
次は何をする?
以下を呼び出そうとしました:
symbolicatecrash crashreport.crash myApp.app.dSYM
そして、クラッシュ レポートにあるのと同じテキストを、記号化されずにそのまま出力します。
何か間違ったことをしているのでしょうか?
ベストアンサー1
Apple からのクラッシュレポートを分析する手順:
アプリストアにプッシュされたリリース .app ファイル、リリース時に作成された .dSYM ファイル、および APPLE から受け取ったクラッシュ レポートをFOLDERにコピーします。
ターミナルアプリケーションを開き、上記で作成したフォルダに移動します(
cd
コマンドを使用)を実行します
atos -arch armv7 -o APPNAME.app/APPNAME MEMORY_LOCATION_OF_CRASH
。レポートによると、メモリの場所はアプリがクラッシュした場所である必要があります。
元:atos -arch armv7 -o 'APPNAME.app'/'APPNAME' 0x0003b508
これにより、クラッシュの原因となった正確な行とメソッド名が表示されます。
元:[classname functionName:]; -510
IPA の記号化
シンボル化に IPA を使用する場合は、拡張子 .ipa を .zip に変更して解凍すると、アプリを含むペイロード フォルダーを取得できます。この場合、.dSYM ファイルは必要ありません。
注記
これは、アプリ バイナリからシンボルが削除されていない場合にのみ機能します。デフォルトでは、リリース ビルドでシンボルが削除されます。プロジェクト ビルド設定で「コピー中にデバッグ シンボルを削除する」を「いいえ」に変更できます。
詳細はこちらをご覧ください役職