Freigeben über


Behandeln von Fehlern im Lobby- und Matchmaking-SDK

Diese Seite soll als Kurzübersicht dienen, um zu erfahren, wie die PlayFab-Lobby- und Matchmaking-SDKs Fehler anzeigen und wie Sie sie behandeln sollten.

Die folgenden Themen werden erläutert:

Synchrone und asynchrone Fehler

Viele SDK-APIs sind asynchron. Sie starten einen Vorgang durch Aufrufen einer API wie PFMultiplayerCreateAndJoinLobby und später wird dieser asynchrone Vorgang mit einer "Zustandsänderung" wie PFLobbyCreateAndJoinLobbyCompletedStateChange abgeschlossen.

Wenn Sie also asynchrone Lobby- und Matchmaking-Client-APIs verwenden, müssen Sie zwei Arten von Fehlern behandeln:

  1. Synchrone Fehler
  2. asynchrone Fehler

Weitere Informationen zum asynchronen Modell und zu Zustandsänderungen des SDK finden Sie auf der Dokumentationsseite für asynchrone Vorgänge .

Für synchrone APIs wie PFLobbyGetLobbyId müssen Sie nur synchrone Fehler behandeln.

Synchrone Fehler

"Synchrone Fehler" sind HRESULTs , die als Rückgabewert eines API-Aufrufs bereitgestellt werden. Diese Fehler sind im Allgemeinen darauf zurückzuführen, dass die API mit falschen Parametern aufgerufen wird, die API aufgerufen wird, während sich die Bibliothek in einem ungültigen Zustand befindet, oder aufgrund von Fehlern der internen Bibliothek beim Zuweisen von Arbeitsspeicher. Alle von der API bereitgestellten Ausgabeparameter sollten als ungültig betrachtet werden, wenn die API einen synchronen Fehler zurückgibt.

Beim Aufrufen asynchroner APIs (z. B. PFMultiplayerCreateAndJoinLobby) gibt der synchrone Fehlerwert nur an, ob der angeforderte Vorgang gestartet werden konnte. Informationen zum Verstehen des Ergebnisses eines asynchronen Vorgangs finden Sie im Abschnitt Asynchrone Fehler .

Asynchrone Fehler

"Asynchrone Fehler" werden als HRESULTs in der Zustandsänderung bereitgestellt, die mit dem asynchronen Abschluss jedes Vorgangs, dem Ergebnisfeld , verbunden ist. Diese Fehler sind in der Regel für Titel interessanter als synchrone Fehler. Eine nicht erschöpfende Liste einiger asynchron gemeldeter Fehlertypen umfasst:

  • Diensteinschränkungsfehler
  • Ungültige Parameterfehler, die nicht synchron auf dem Client überprüft werden können
  • Fehler bei der Interaktion mit dem Echtzeitbenachrichtigungsdienst
  • Konnektivitätsfehler

Im Abschnitt Fehlercodes und Fehlermeldungen finden Sie Anleitungen zum Abrufen von lesbaren Fehlermeldungen für asynchrone und synchrone Fehler.

Fehlercodes und Fehlermeldungen

Fehler (synchron oder asynchron) werden von der Bibliothek in Form eines HRESULT dargestellt: ein numerischer Fehlercode mit vier Byte. Diese kompakten Fehlercodes eignen sich ideal für die Aufzeichnung in Telemetriedaten und anderen Diagnosetools, die zum Debuggen von unerwartetem Titelverhalten verwendet werden.

Diese Fehlercodes können durch Aufrufen von PFMultiplayerGetErrorMessage in eine lesbare Nachricht konvertiert werden. Diese Fehlermeldungen sollen nur von Entwicklern angezeigt werden. Sie sind nicht lokalisiert oder für die Nutzung durch Endbenutzer vorgesehen, daher eignen sie sich am besten für interne Entwicklungsprotokolle.

Darüber hinaus ist eine Liste der Fehlercodes des SDK mit ihren Fehlermeldungen unter PlayFab Multiplayer SDK Error Codes (Fehlercodes des PlayFab Multiplayer SDK) verfügbar.