次の方法で共有


エラー

重要

Visual Studio App Center は、2026 年 6 月 30 日まで引き続きサポートされる分析機能と診断機能を除き、2025 年 3 月 31 日に廃止されました。 詳細を参照してください。

App Center エラーを使用すると、アプリ内のエラーを処理し、アプリの潜在的な問題を回避できます。 このセクションでは、アプリでエラーをキャッチして報告する方法について説明します。 例外に関する 公式ドキュメントでエラーを使用するタイミングと方法に関するベスト プラクティスについて説明します。

現在、処理されたエラーは Xamarin プラットフォームでのみサポートされています。

全般情報

アプリケーションで App Center を実行すると、アプリケーションの有効期間中にすべてのエラーが報告されます。 これらのエラーは、(ネットワーク接続がある場合)、または次回アプリケーションが起動されたときにサーバーに送信されます。

機能セットの詳細については、エラーに関する ドキュメントを参照してください

Crashes SDK を統合して開始する

Xamarin アプリでエラーを追跡するには、App Center SDK に Crashes モジュールを統合します。 その方法については 、Crashes SDK のドキュメント を参照してください。

キャッチされないエラー (クラッシュ)

キャッチされないエラー (クラッシュ) は、try/catch ブロックの外部で発生するエラーです。 App Center SDK のクラッシュ モジュールを統合すると、これらのクラッシュが既定で自動的に報告されます。

Try/Catch エンクロージャ内 (エラー)

try/catch エンクロージャ内 TrackError メソッドを呼び出すことで、エラーが発生したときに App Center サービスに送信される情報を制御し、エラーとデバイスの状態をより明確に把握できます。

TrackErrorメソッドを使用すると、いくつかの利点があります。

  • より正確にサービスにレポートを送信します。
  • 追加情報を使用してサービスにレポートを送信します。

App Center で処理されたエラーを追跡する

エラーを処理して App Center に報告する Crashes SDK を含めます。 このモジュールの一部として、 TrackError メソッドを使用してエラーを追跡できます。

try
{
    int divByZero = 42 / int.Parse("0");
} catch (DivideByZeroException ex){
    Crashes.TrackError(ex);
}

Crashes SDK を使用して Xamarin のエラーを追跡する方法の詳細については、 Crashes 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 文字です。