Method: accounts.signInWithGameCenter

Meldet einen Nutzer mit iOS-Game Center-Anmeldedaten an oder registriert ihn. Wenn die Anmeldung erfolgreich ist, werden für den authentifizierten Nutzer ein neues Identity Platform-ID-Token und ein neues Aktualisierungstoken ausgestellt. Die Bundle-ID ist im Anfrageheader als x-ios-bundle-identifier erforderlich.

In der Anfrage ist ein API-Schlüssel erforderlich, um das Google Cloud-Projekt zu identifizieren.

Apple hat das Feld „playerID“ eingestellt. Das Firebase SDK für die Apple-Plattform verwendet ab Version 10.5.0 gamePlayerID und teamPlayerID. Wenn Sie auf die SDK-Version 10.5.0 oder höher upgraden, werden vorhandene Integrationen, in denen playerID verwendet wird, auf gamePlayerID und teamPlayerID umgestellt. Wenn Sie signInWithGameCenter aufrufen, müssen Sie playerID zusammen mit den neuen Feldern gamePlayerID und teamPlayerID angeben, um alle vorhandenen Nutzer zu identifizieren.

Ein Upgrade vorhandener Game Center-Anmeldeintegrationen auf die SDK-Version 10.5.0 oder höher ist nicht rückgängig zu machen.

HTTP-Anfrage

POST https://identitytoolkit.googleapis.com/v1/accounts:signInWithGameCenter

Die URL verwendet die Syntax der gRPC-Transcodierung.

Anfragetext

Der Anfragetext enthält Daten mit folgender Struktur:

JSON-Darstellung
{
  "playerId": string,
  "publicKeyUrl": string,
  "signature": string,
  "salt": string,
  "timestamp": string,
  "idToken": string,
  "displayName": string,
  "tenantId": string,
  "teamPlayerId": string,
  "gamePlayerId": string
}
Felder
playerId

string

Pflichtangabe. Die Game Center-Spieler-ID des Nutzers. Von Apple eingestellt.

Gib playerID zusammen mit gamePlayerID und teamPlayerID an, um die Migration der Game Center-Spieler-ID eines Nutzers zu gamePlayerID zu starten.

publicKeyUrl

string

Pflichtangabe. Die URL, unter der der öffentliche Apple-Schlüssel abgerufen wird, um die angegebene Signatur zu überprüfen, ist von Apple signiert.

signature

string

Pflichtangabe. Die von Apple generierten Daten der Bestätigungssignatur.

salt

string

Pflichtangabe. Ein zufälliger String, der zum Generieren der angegebenen Signatur verwendet wird.

timestamp

string (int64 format)

Pflichtangabe. Der Zeitpunkt, zu dem die Signatur von Apple erstellt wurde, in Millisekunden seit der Epoche.

idToken

string

Ein gültiges ID-Token für ein Identity Platform-Konto. Wenn vorhanden, wird mit dieser Anfrage die Game Center-Spieler-ID mit dem Konto verknüpft, das durch dieses ID-Token dargestellt wird.

displayName

string

Der Game Center-Anzeigename des Nutzers.

tenantId

string

Die ID des Identity Platform-Mandanten, bei dem sich der Nutzer anmeldet.

teamPlayerId

string

Die Spieler-ID des Nutzers im Game Center-Team. Eine eindeutige Kennung für einen Spieler aller Spiele, die Sie über Ihr Entwicklerkonto vertreiben. https://developer.apple.com/documentation/gamekit/gkplayer/3174857-teamplayerid

gamePlayerId

string

Die Game Center-Spieler-ID des Nutzers. Eine eindeutige Kennung für einen Spieler des Spiels. https://developer.apple.com/documentation/gamekit/gkplayer/3113960-gameplayerid

Antworttext

Antwortnachricht für accounts.signInWithGameCenter

Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur:

JSON-Darstellung
{
  "localId": string,
  "playerId": string,
  "idToken": string,
  "refreshToken": string,
  "expiresIn": string,
  "isNewUser": boolean,
  "displayName": string,
  "teamPlayerId": string,
  "gamePlayerId": string
}
Felder
localId

string

Die ID des authentifizierten Nutzers. Muss immer in der Antwort vorhanden sein.

playerId

string

Die Game Center-Spieler-ID des Nutzers.

Gib playerID zusammen mit gamePlayerID und teamPlayerID an, um die Migration der Game Center-Spieler-ID eines Nutzers zu gamePlayerID zu starten.

idToken

string

Ein Identity Platform-ID-Token für den authentifizierten Nutzer.

refreshToken

string

Ein aktualisierter Identity Platform-Token für den authentifizierten Nutzer.

expiresIn

string (int64 format)

Die Anzahl der Sekunden, bis das ID-Token abläuft.

isNewUser

boolean

Gibt an, ob der angemeldete Nutzer durch diese Anfrage erstellt wurde.

displayName

string

Anzeigename des authentifizierten Nutzers.

teamPlayerId

string

Die Spieler-ID des Nutzers im Game Center-Team. Eine eindeutige Kennung für einen Spieler aller Spiele, die Sie über Ihr Entwicklerkonto vertreiben. https://developer.apple.com/documentation/gamekit/gkplayer/3174857-teamplayerid

gamePlayerId

string

Die Game Center-Spieler-ID des Nutzers. Eine eindeutige Kennung für einen Spieler des Spiels. https://developer.apple.com/documentation/gamekit/gkplayer/3113960-gameplayerid

Autorisierungsbereiche

Erfordert einen der folgenden OAuth-Bereiche:

  • https://www.googleapis.com/auth/identitytoolkit
  • https://www.googleapis.com/auth/cloud-platform

Weitere Informationen finden Sie unter Authentication Overview.