ロビーとマッチメイキング SDK エラーの処理

このページの目的は、PlayFab ロビーとマッチメイキング SDK によりどのようにエラーが表示され、それをどのように処理すべきかについてのガイダンスのクイック リファレンスを提供することです。

次のトピックについて説明します。

同期と非同期

多くの SDK API は非同期です。 操作を開始するには、PFMultiplayerCreateAndJoinLobby などの API を呼び出し、その後、非同期操作は PFLobbyCreateAndJoinLobbyCompletedStateChange のような "状態変更" で完了します。

これは、非同期ロビー API とマッチメイキング クライアント API を使用する場合は、次の 2 種類のエラーを処理する必要があることを意味します。

  1. 同期エラー
  2. 非同期エラー

SDK の非同期モデルと状態変更の詳細については、非同期操作に関するドキュメント ページを参照してください。

PFLobbyGetLobbyId などの同期 API の場合、同期エラーを処理するだけです。

同期エラー

"同期エラー" は、API 呼び出しの戻り値として提供される HRESULT です。 これらのエラーは、一般に、正しくないパラメーターを使用して API を呼び出したり、ライブラリが無効な状態のときに API を呼び出したり、メモリを割り当てるための内部ライブラリが失敗したりすることが原因です。 API によって提供される出力パラメーターは、API から同期エラーが返された場合は無効と見なす必要があります。

非同期 API (PFMultiplayerCreateAndJoinLobby など) を呼び出す場合、同期エラー値は、要求された操作を開始できたかどうかのみを表します。 非同期操作の結果の詳細については、「非同期エラー」セクションを参照してください。

非同期エラー

"非同期エラー" は、各操作の非同期完了に関連付けられた状態変更において HRESULT として [result] フィールドに提供されます。 通常、これらのエラーは、タイトルでは同期エラーよりも興味深いものです。 非同期的に報告されるエラーの種類について、その一部を次のリストに示します。

  • サービス調整エラー
  • クライアントで同期的に検証できない無効なパラメーター エラー
  • リアルタイム通知サービスの操作時のエラー
  • 接続エラー

非同期エラーと同期エラーの両方について人間が判読できるエラー メッセージの取得方法のガイダンスについては、「エラー コードと エラー メッセージ」セクションを参照してください。

エラー コードとエラー メッセージ

エラー (同期または非同期) は、ライブラリによって HRESULT の形式で表示されます。4 バイトの数値エラー コードです。 これらのコンパクトなエラー コードは、予期しないタイトルの動作をデバッグするために使用されるテレメトリやその他の診断ツールでの記録に最適です。

これらのエラー コードは、PFMultiplayerGetErrorMessage を呼び出すことによって、人間が判読できるメッセージに変換できます。 これらのエラー メッセージは、開発者のみが確認することを目的としています。 これらはローカライズされていないか、エンド ユーザーによる使用を目的としていないため、内部開発ログに最適です。

さらに、SDK のエラー コードとそのエラー メッセージの一覧は、「PlayFabPlayFab マルチプレイヤー SDK エラー コード」で参照できます。