前提条件
始める前に、以下を確認してください。- アプリのクラッシュレポートをシンボリケートする方法を読んで、集約クラッシュレポート(ACR)のシンボリケート方法を学んでください。
- ACRの概要を使用してクラッシュをデバッグする方法を読んで、スタックトレースとスタックフレームの解読方法を理解してください。
クラッシュの発生元の特定
クラッシュの発生元を特定するには、次の手順に従います。手順1:クラッシュレポートをシンボリケートする
Vega StudioでACRファイルを実行して、シンボリケートされた概要を生成します。手順については、アプリのクラッシュレポートをシンボリケートする方法を参照してください。手順2:アプリタイプを特定する
アプリがJavaScriptのみで作成されているか、JavaScriptとネイティブコードの混合かを特定します。次に、ACRの概要のメタデータセクションでCRASH_LANGフィールドを調べて、クラッシュした言語を確認します。
手順3:ACRの概要でスタックトレースを確認する
ACRの概要で、Symbolicated stacktracesセクションを開きます。ACRファイルにJavaScriptトレースが存在する場合、シンボリケーターはそれらを優先的に表示します。手順4:トレースを照合して発生元を特定する
以下のパターンに従って、クラッシュの発生元がアプリのコードかAmazonのコードかを判断します。 JavaScriptスタックトレースの場合:-
アプリのコード - アプリのソースファイルを指します。
@amazon-devicesは含まれません。 -
Amazonのコード - パスに
@amazon-devicesが含まれます。
-
アプリのコード - スタックフレームに開発者のワークスペースディレクトリが含まれ、シンボルパスが表示されます。
-
AmazonまたはOSのコード - ワークスペースディレクトリへの参照は含まれません。システムパスまたは
??が表示されます。
手順5:クラッシュの発生元に基づいて対処を行う
クラッシュの発生元がアプリのコードである場合は、ACRの概要を使用して、スタックトレース全体、システム情報、メタデータを確認します。次に、アプリのソースコードで問題を特定して修正します。 クラッシュがAmazonのコードを指していて、次のいずれかに該当する場合は、Amazonサポートにお問い合わせください。- JavaScriptのみのアプリでネイティブのスタックトレースが表示される。
- スタックトレースがアプリのコードを参照していない。
- JavaScriptスタックトレースの最上位のフレームがアプリのコードを指していない。
- LMKクラッシュが繰り返し発生し、分析できるスタックトレースがない。
関連トピック
- アプリのクラッシュレポートをシンボリケートする方法
- ACRの概要を使用してクラッシュをデバッグする方法
- Vega Studioを使用して1行ずつデバッグを実行する方法
- 開発者メニューのツールを使用してアプリをデバッグする方法
- AI支援クラッシュ分析
- AI活用開発に向けたAmazon Devices Builder Toolsのセットアップ

