ドキュメントをご覧ください。アプリが頻繁にクラッシュしていることがわかったら、次のステップとして、クラッシュを診断します。クラッシュを診断するクラッシュの解決は時として困難です。クラッシュの根本原因を特定できれば、ほとんどの場合は解決策を見つけられます。アプリのクラッシュが発生する状況はさまざまです。渡されたとか、マルチスレッド化されたインタラクションが複雑すぎるとかいった、わかりにくい原因による場合もあります。トレースを確認するクラッシュを解決するには、まず、クラッシュの発生場所を特定します。トレースを使用できます。使用中にローカルでクラッシュを再現する必要があります。次のトレースは、サンプルアプリにおけるクラッシュの例を示しています。つの情報が表示されます。スローされた例外のタイプ。例外がスローされたコードのセクション。一般的に、スローされた例外のタイプは、何が問題かを知るための強力なヒントになります。それ以外かを確認して、該当する例外クラスに関するドキュメントを参照します。行目には、例外がスローされたソースファイルのクラス、メソッド、ファイル、行番号が示されます。フレームと呼びます)が別の行に表示されます。スタックをたどりながらコードを調べることで、誤った値を渡している場所を見つけられることがあります。トレースに表示されていなければ、どこかで無効なパラメータを非同期処理に渡している可能性があります。呼び出したかを確認すれば、何が起きたかを把握できます。クラッシュの診断をご覧ください。クラッシュを再現するためのヒントエミュレータを起動したりデバイスをパソコンに接続したりするだけでは、問題を完全には再現できないかもしれません。多くの場合、開発環境は、帯域幅、メモリ、ストレージなどのリソースに余裕があります。バージョン、デバイスタイプ、アプリのバージョン間の相関を発見したりすることができます。発生する場合は、まず、メモリ容量が小さいエミュレータを作成します。ネットワークの受信可能範囲を頻繁に出入りします。したがって、一般的に、アプリのネットワーク例外は、エラーとしてではなく、予期せず発生する正常な動作状態として扱う必要があります。)を再現する必要がある場合は、アプリがネットワークを使用しようとしたときに機内モードをオンにしてみてください。ネットワーク速度のエミュレーションまたはネットワーク遅延(あるいはその両方)をエミュレータで選択することにより、ネットワーク品質を低下させる方法もあります。フラグを指定してエミュレータを起動します(次の例を参照)。オプションの詳細については、コマンドラインからのエミュレータの起動をご覧ください。ツールを使用してさらに情報を収集します。出力には、デベロッパーが出力したログメッセージが、システムによって出力された他のメッセージとともに表示されます。ステートメントをオフにすることを忘れないでください。