エラー
重要
Visual Studio App Center は、2025 年 3 月 31 日に廃止される予定です。 完全に廃止されるまで Visual Studio App Center を引き続き使用できますが、移行を検討できる推奨される代替手段がいくつかあります。
App Center エラーを使用すると、アプリ内のエラーを処理し、アプリの潜在的な問題を回避できます。 このセクションでは、アプリでエラーをキャッチして報告する方法について説明します。 エラーを使用するタイミングと方法に関するベスト プラクティスの詳細については 、例外に関する公式ドキュメントを参照してください。
注意
現在、処理済みエラーは Xamarin プラットフォームでのみサポートされています。
アプリケーションで App Center を実行すると、アプリケーションの有効期間中にすべてのエラーが報告されます。 これらのエラーは、エラーが発生したとき (ネットワーク接続がある場合)、または次回アプリケーションが起動されたときにサーバーに送信されます。
機能セットの詳細については、エラーに関する ドキュメントを参照してください。
Xamarin アプリでエラーを追跡するには、App Center SDK で Crashes モジュールを統合します。 その方法については 、クラッシュ SDK のドキュメントを参照してください 。
キャッチされないエラー (クラッシュ) は、try/catch ブロックの外部で発生するエラーです。 App Center SDK のクラッシュ モジュールを統合すると、これらのクラッシュが App Center によって既定で自動的に報告されます。
try/catch エンクロージャ内で メソッドを呼び出 TrackError
すことで、エラーが発生したときに App Center サービスに送信される情報を制御し、エラーとデバイスの状態をより明確に把握できます。
メソッドを使用すると TrackError
、いくつかの利点があります。
- より精度の高いレポートをサービスに送信します。
- 追加情報を含むレポートをサービスに送信します。
クラッシュ SDK を含めてエラーを処理し、App Center に報告します。 このモジュールの一部として、 メソッドを使用してエラーを TrackError
追跡できます。
try
{
int divByZero = 42 / int.Parse("0");
} catch (DivideByZeroException ex){
Crashes.TrackError(ex);
}
クラッシュ SDK を使用して Xamarin のエラーを追跡する方法の詳細については、 クラッシュ SDK のドキュメントを参照してください。
App Center に送信されるエラー レポートを調整して、エラーに関する詳細なコンテキストに関する追加情報を提供できます。 これを実現するには、文字列のキーと値のペアのディクショナリを メソッドに TrackError
渡します。 これらのプロパティは省略可能です。 例:
try
{
using (var text = File.OpenText("saved_game001.txt"))
{
Console.WriteLine("{0}", text.ReadLine());
...
}
}
catch (FileNotFoundException ex)
{
Crashes.TrackError(ex, new Dictionary<string,string>{
{ "Filename", "saved_game001.txt" },
{ "Where", "Reload game" },
{ "Issue", "Index of available games is corrupted" }
});
}
ここでは、完全な例外 (例) はまだ App Center サービスに送り返されていますが、これに加えて、追加のデバッグ情報を含む辞書も作成および送信されます。
- エラーごとに最大 20 個のプロパティを定義できます。その制限を超えるものはすべて拒否されます。
- エラー プロパティ キーとエラー プロパティ値あたりの最大文字数は 125 文字です。