> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XR-074 XBOX およびパートナー サービスへの接続喪失

> タイトルは XBOX およびパートナー サービスへの接続喪失を丁寧に扱い、XBOX の再試行ポリシーを尊重し、サービスの問題をユーザーに明確に伝える必要があります。

# XR-074: XBOX およびパートナー サービスへの接続喪失 \*

バージョン 2.0、2025/11/1

タイトルは、XBOX およびパートナー サービスの接続エラーを丁寧に扱う必要があります。障害発生後に XBOX サービスへのリクエストを再試行する際、タイトルは XBOX が設定した再試行ポリシーを尊重する必要があります。サービスが利用できない場合、タイトルは適切にユーザーへのメッセージングを管理する必要があります。パートナー サービスが利用不可の場合、ゲームは XBOX network に問題があるかのように示してはいけません。ネットワーク サービスが遅い、または断続的にしか利用できない場合でも、タイトルはクラッシュしたりハングしたりしてはなりません。

## 詳細情報

タイトルは自身のネットワーク操作のパフォーマンスに反応するか、`Windows.Xbox.Networking` のネットワーク品質 API を使って現在のネットワーク状況を判断してください。また、転送データを減らす、適切なユーザー ロールを選ぶ、クラウド サービスを活用するなどして、丁寧にデグレードしてください。

### 非 XBOX サービスの問題の処理

一時的でないタイムアウト、ネットワーク API エラー、ユーザー体験に影響するサービス構成不足など、パートナー サービスの問題が発生した場合、タイトルは利用できない特定の機能やサービスをユーザーに通知する必要があります。ユーザーがトラブルシューティングしている間や、ユーザーが手動で再試行できる状態に、タイトルは安全に丁寧に失敗するべきです。

ユーザー フレンドリーなメッセージの例:

> 「申し訳ありません、*Microsoft 以外のサービス* は現在利用できません。しばらくたってから再度お試しください。詳細は *Microsoft 以外のサポート連絡先* にお問い合わせください。」

### XBOX サービスの問題の処理

XBOX サービスへの接続が失われると、一部の機能が利用できなくなる場合があります。この場合、タイトルは明確でユーザー フレンドリーなメッセージングを使ってこれをユーザーに伝えるべきです。

サービスが利用不可の場合、タイトルはリクエストを再試行することが許可されますが、これは XBOX が許可するパラメーター内でのみ可能です。必要な HTTP 再試行とバックオフ ロジック、個々のサービスに関するユーザー対話ガイダンスを含む、XBOX コンソール タイトルのサービス回復力の詳細については、GDK の Service Interruption Resiliency for Titles ドキュメントを参照してください。

### XBOX 接続の必須化

XBOX コンソール向けの開発において、機能の大部分がインターネット (特に XBOX) への接続を必要とするタイトルは、AppX マニフェストに Boolean フラグ `RequireXboxLive` を含めるとよい場合があります。これにより、XBOX が利用できないときにタイトルの起動がブロックされ、接続が失われた場合はタイトルがサスペンドされ、続いて終了されます。

GDK を使ったネットワーキングについては、GDK ドキュメントの Networking セクションを参照してください。

## 認定テスト ケース

### 074-01 XBOX サービスへの WAN 切断

**テスト手順**

1. XBOX プロファイルにサインインします。
2. 以下のアクションを実行している間に WAN ネットワークを切断します。Ethernet スイッチ/ハブを使用している場合は、ネットワーク デバイスからアップリンク ケーブルを外します。デバイスが Wi-Fi 経由で接続されている場合は、ワイヤレス アクセス ポイント接続からアップリンク ケーブルを外します。
   * 新しいセーブ ポイントの作成
   * セーブ ポイントのロード
   * オート セーブ ポイントへの到達
   * 保存済みゲームの一覧列挙
   * オンライン セッションの検索と参加
   * オンライン セッションの作成試行
   * リーダーボードの表示 (該当する場合)
   * オフラインでのプレイ

**期待される結果**

コンソールが XBOX サービスに到達できない場合、タイトルはユーザー フレンドリーなエラー メッセージで応答する必要があります。

**合格例**

1. タイトルが、XBOX サービスへのネットワーク接続喪失を示すエラー メッセージを表示する。
2. XBOX サービスを必要としないローカル ゲーム モードのプレイ中、タイトルはエラー メッセージを表示しない。
3. AppX マニフェストで `RequireXboxLive` が設定されたタイトルは、接続喪失時にサスペンドされ、次に終了する。

**不合格例**

1. ユーザーが、非オンラインの XBOX ゲーム セッションを完了できない。
2. タイトルが応答しない状態や不安定な状態になる。

### 074-02 直接切断

**テスト手順**

1. タイトルを起動し、XBOX プロファイルにサインインします。
2. タイトル内で以下のアクションを実行している間に、デバイスからネットワーク ケーブルを抜くか、WAP またはワイヤレス ルーターの電源を切ります。
   * 新しいセーブ ポイントの作成。
   * セーブ ポイントのロード。
   * オート セーブ ポイントへの到達。
   * 保存済みゲームの一覧列挙。
   * オンライン セッションの検索と参加。
   * オンライン セッションの作成試行。
   * リーダーボードの表示 (該当する場合)。
   * オフラインでのプレイ。

**期待される結果**

デバイスが XBOX サービスへの接続を失った場合、タイトルはユーザー フレンドリーなエラー メッセージで応答する必要があります。

**合格例**

1. オンライン ゲーム モード中、タイトルがユーザー フレンドリーなメッセージを表示する。
2. オフライン ゲーム モードのゲームプレイは中断されない。
3. AppX マニフェストで `RequireXboxLive` が設定されたタイトルは、接続喪失時にサスペンドされ、次に終了する。

**不合格例**

1. オフライン ゲーム モード中にエラー メッセージが表示される。
2. タイトルが応答しない状態や不安定な状態になる。
3. ネットワークがオフラインになった後もユーザーがオンライン メニューを閲覧できる、あるいはバッファされたメディアを閲覧できる。

### 074-03 サスペンド時の XBOX サービスへの切断

リテール コンソールでは、次の条件でゲームがサスペンドされます。

* 電源モードが Instant-on の状態でコンソールが電源オフにされて Connected Standby に入ったとき。
* ゲームが 10 分間フォーカスを外れたままの場合。たとえば、Settings などのアプリケーションを起動し、10 分間フォーカスを保持したとき。

このテスト ケースでは、手順 3 で両方の方法を検証してください。

**テスト手順**

1. コンソールの電源モードを Instant-on に設定した状態で XBOX プロファイルにサインインします。
2. ゲームを起動し、ゲームプレイに進みます。
3. ゲーム内のさまざまなタイミングでゲームをサスペンドします。
4. ゲームを再開し、ゲームが切断を丁寧に扱うことを確認します。
5. ゲーム全体を通して手順 3〜4 を繰り返します。

**期待される結果**

サスペンド後にコンソールが XBOX サービスに到達できない場合、タイトルは正常に再開し、状況を丁寧に扱い、必要に応じてユーザー フレンドリーなエラー メッセージで応答する必要があります。

**合格例**

1. オンラインの XBOX マルチプレイヤー セッション中、タイトルが XBOX サービスへのネットワーク接続喪失を示すエラー メッセージを表示する。
2. XBOX サービスを必要としないローカル ゲーム モードのプレイ中、タイトルはエラー メッセージを表示しない。

**不合格例**

1. ユーザーが、非オンラインの XBOX ゲーム セッションを完了できない。
2. タイトルが応答しない状態や不安定な状態になる。
3. 再開後、タイトルが誤解を招くまたは不正なエラー メッセージを表示する。

### 074-04 サスペンド中の XBOX サービスへの再接続

リテール コンソールでは、次の条件でゲームがサスペンドされます。

* 電源モードが Instant-on の状態でコンソールが電源オフにされて Connected Standby に入ったとき。
* ゲームが 10 分間フォーカスを外れたままの場合。たとえば、Settings などのアプリケーションを起動し、10 分間フォーカスを保持したとき。

このテスト ケースでは、手順 3 で両方の方法を検証してください。

**テスト手順**

1. コンソールの電源モードを Instant-on に設定し、コンソールをホームに設定した状態で XBOX プロファイルにサインインします。
2. XBOX への接続はないがローカル ネットワーク接続を維持した状態でタイトルを起動します。
   * Ethernet スイッチ/ハブを使用している場合は、ネットワーク デバイスからアップリンク ケーブルを外します。
   * デバイスが Wi-Fi 経由で接続されている場合は、ワイヤレス アクセス ポイントからアップリンク ケーブルを外します。
3. ゲーム内のさまざまなタイミングでゲームをサスペンドします。
4. アップリンク ケーブルを再接続し、コンソールが XBOX サービスに再接続するのを待ちます。
5. ゲームを再開し、ゲームが再接続を丁寧に扱うことを確認します。
6. ゲーム全体を通して手順 2〜5 を繰り返します。

**期待される結果**

サスペンド後にコンソールが XBOX サービスに到達できない場合、タイトルは正常に再開し、状況を丁寧に扱い、必要に応じてユーザー フレンドリーなエラー メッセージで応答する必要があります。

**合格例**

1. ユーザーがタイトルを再開し、中断なくオフラインの XBOX ゲーム セッションを完了できる。
2. タイトルが安定状態を維持し、クラッシュしない。

**不合格例**

1. ユーザーが、非オンラインの XBOX ゲーム セッションを完了できない。
2. タイトルが応答しない状態や不安定な状態になる。
3. 再開後、タイトルが誤解を招くまたは不正なエラー メッセージを表示する。

### 074-05 常時低帯域幅

**必要なツール**

* GDK/XDK の `xbstress.exe`。

**構成**

ネットワーク シミュレーションはコマンドライン ストレス ツール `xbstress.exe` で制御します。このツールはネットワーク シミュレーションを含むさまざまなコンソール ストレッサーを構成します。ネットワーク目的では、`xbstress.exe` は XBOX デバイス上の専用ドライバーを制御し、パケットのドロップ、レイテンシーの注入、スループットの制限を行います。`xbstress.exe` には minimum、average、excellent の 3 つの事前構成済みシミュレーション プロファイルがあり、重要なネットワーク シナリオを簡単にシミュレートできます。この XR は minimum プロファイルに対応します。

**テスト手順**

1. minimum プロファイルを使用して、XBOX デバイスの最低動作要件まで接続性を絞ります。
2. 以下を含むオンラインのタイトル関連アクションを実行します。
   * すべてのメニューをナビゲート。
   * オンライン ゲーム セッションのプレイ。

**期待される結果**

ユーザーのインターネット接続が 192 Kbps を下回っても、タイトルはクラッシュしたりユーザー データ損失を引き起こしたりしてはなりません。

**合格例**

1. 低帯域幅によるオンライン プレイへの影響の可能性を示すユーザー フレンドリーなメッセージが表示される。
2. タイトルがクラッシュせず、ユーザー データ損失を引き起こさない。

**不合格例**

1. タイトルがクラッシュする、またはユーザー データ損失を引き起こす。

### 074-06 変動する低帯域幅

**必要なツール**

* GDK/XDK の `xbstress.exe`。

**構成**

ネットワーク シミュレーションはコマンドライン ストレス ツール `xbstress.exe` で制御します。このツールはネットワーク シミュレーションを含むさまざまなコンソール ストレッサーを構成します。ネットワーク目的では、`xbstress.exe` は XBOX デバイス上の専用ドライバーを制御し、パケットのドロップ、レイテンシーの注入、スループットの制限を行います。`xbstress.exe` には minimum、average、excellent の 3 つの事前構成済みシミュレーション プロファイルがあり、重要なネットワーク シナリオを簡単にシミュレートできます。この XR は minimum プロファイルに対応します。

**テスト手順**

1. `xbstress.exe` のすべてのネットワーク制限を無効化します。
2. 以下を含むオンラインのタイトル関連アクションを実行します。
   * すべてのメニューをナビゲート。
   * オンライン ゲーム セッションのプレイ。
3. 手順 2 を実行している間に、`xbstress` の minimum プロファイルを有効化します。

**期待される結果**

ユーザーのインターネット接続が 192 Kbps を下回っても、タイトルはクラッシュしたりユーザー データ損失を引き起こしたりしてはなりません。

**合格例**

1. 低帯域幅によるオンライン プレイへの影響の可能性を示すユーザー フレンドリーなメッセージが表示される。
2. タイトルがクラッシュせず、ユーザー データ損失を引き起こさない。

**不合格例**

1. タイトルがクラッシュする、またはユーザー データ損失を引き起こす。

### 074-07 動的な接続喪失

**必要なツール**

* Content Blocking アドオン付きの Fiddler Classic。

**Content Blocking アドオンを使用してパートナー サービスをブロックするように Fiddler Classic を構成**

* コンソールで、Web サービス呼び出しをデバッグするための Fiddler をセットアップします。
* PC で、Web サービス呼び出しをデバッグするための Fiddler をセットアップします。
* Fiddler の Content Blocking アドオンをインストールします。
* Fiddler で、メニュー ContentBlock から「Enabled」を選択します。

<Tip>
  **ブロック リストの構成手順:**

  1. Fiddler を実行した状態でタイトルを起動し、すべてのメニューをナビゲートし、マルチプレイヤー セッションを完了し、すべてのゲーム モードをロードし、以下を含むタイトルのすべての領域をナビゲートします。
     * メニュー
     * リーダーボード
     * サーバー (作成と他人のサーバーへの参加)
     * フレンド リスト
     * タイトル内ストア
     * 期間限定イベント これにより、通常のゲームプレイ中に接続するすべてのホストを網羅します。
  2. Fiddler で、非 Microsoft サービスであるホストを特定します。
     * セッション一覧をホストで並べ替え、以下のいずれも含まないホストを見つけます: `microsoft, msft, xboxlive, xboxservices, live, PlayFabApi, msn, bing`。
  3. Fiddler で、非 Microsoft ホストをブロック リストに追加します。
     * 非 Microsoft ホストを右クリックして「Block this Host」を選択します。
     * 他のすべての非 Microsoft ホストについて繰り返します。

  同じホストを複数回ブロックする必要はありません。

  ブロック リストを編集するには、ContentBlock メニューから「Edit Blocked Hosts...」を選択します。

  すべての非 Microsoft ホストをブロック リストに追加した後、テスト ケースの実行に進んでください。
</Tip>

**テスト手順**

1. XBOX プロファイルにサインインしてタイトルを起動します。
2. マルチプレイヤー セッションを完了し、すべてのゲーム モードをロードし、以下を含むタイトルのすべての領域をナビゲートします。
   * メニュー
   * リーダーボード
   * サーバー (作成と他人のサーバーへの参加)
   * フレンド リスト
   * タイトル内ストア
   * 期間限定イベント
3. XBOX network の問題を示すエラー メッセージがタイトルに表示されないことを確認します。

**期待される結果**

タイトルは非 Microsoft サービスへの切断を丁寧に扱う。

**合格例**

1. パートナー ホストのサービスへの接続喪失時に、タイトルがハングまたはクラッシュしない。

**不合格例**

1. Microsoft サービスに問題があることを示唆するメッセージが表示される。
2. 説明が不十分なエラー メッセージが表示される。
3. タイトルがクラッシュする、不安定になる、コンソール再起動を引き起こす。

### 074-08 起動前のダウンタイム

**必要なツール**

* GDK/XDK の `xbstress.exe`。
* Windows 10 の場合は Fiddler Classic。

**テスト手順**

1. コンソールでは、非 Microsoft トラフィックに対して次のコマンドを使って `xbstress.exe` で broken ネットワーク チャネルを作成します: `xbstress set channel=0 network=broken addresses=[セミコロン区切りのアドレス リスト]`
2. 次のコマンドでネットワーク シミュレーションを開始します: `xbstress simulate network=channels`。
3. Windows 10 でテストする場合は、Fiddler を使ってダウンタイムをエミュレートします。
4. XBOX プロファイルにサインインします。
5. タイトルを起動します。
6. 非 Microsoft のオンライン機能にアクセスします。

**期待される結果**

タイトルは、非 Microsoft サービスへの到達に問題があることを示すユーザー フレンドリーなエラー メッセージを提供し、接続の再試行の機会を提供する必要があります。

**合格例**

1. パートナー ホストのサービスへの接続喪失時に、タイトルがハングまたはクラッシュしない。

**不合格例**

1. 表示されたエラーが Microsoft サービスの問題を示唆する。
2. 説明が不十分なエラー メッセージが表示される。
3. タイトルがクラッシュする、不安定になる、コンソール再起動を引き起こす。


## Related topics

- [XR-045 XBOX network とアカウント特権](/ja-jp/publishing/certification/xr/xr-045.md)
- [FMA: XR-074 XBOX サービスへの接続喪失](/ja-jp/publishing/certification/fma/xr-074.md)
- [PC およびモバイル認定要件および失敗の多いテスト](/ja-jp/publishing/certification/pc-certification.md)
- [XR-003 提出時のタイトル品質](/ja-jp/publishing/certification/xr/xr-003.md)
- [Microsoft Store API を使用してサービスを認証する](/ja-jp/publishing/xstore-commerce/xstore-authenticating-service.md)
