Method: accounts.signInWithGameCenter

Consente a un utente di accedere o registrarsi con le credenziali di Game Center per iOS. Se l'accesso va a buon fine, vengono emessi un nuovo token ID e un nuovo token di aggiornamento di Identity Platform per l'utente autenticato. L'ID pacchetto è obbligatorio nell'intestazione della richiesta come x-ios-bundle-identifier.

Per identificare il progetto Google Cloud, nella richiesta è obbligatoria una chiave API.

Apple ha ritirato il campo playerID. L'SDK Firebase per la piattaforma Apple utilizzerà gamePlayerID e teamPlayerID a partire dalla versione 10.5.0. L'upgrade alla versione 10.5.0 o successive dell'SDK aggiorna le integrazioni esistenti che utilizzano playerID in modo che utilizzino gamePlayerID e teamPlayerID. Quando effettui chiamate a signInWithGameCenter, devi includere playerID insieme ai nuovi campi gamePlayerID e teamPlayerID per identificare correttamente tutti gli utenti esistenti.

L'upgrade delle integrazioni di accesso a Game Center esistenti alla versione SDK 10.5.0 o successive è irreversibile.

Richiesta HTTP

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

L'URL utilizza la sintassi di transcodifica gRPC.

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "playerId": string,
  "publicKeyUrl": string,
  "signature": string,
  "salt": string,
  "timestamp": string,
  "idToken": string,
  "displayName": string,
  "tenantId": string,
  "teamPlayerId": string,
  "gamePlayerId": string
}
Campi
playerId

string

Obbligatorio. L'ID giocatore di Game Center dell'utente. È stato ritirato da Apple.

Passa playerID insieme a gamePlayerID e teamPlayerID per avviare la migrazione dell'ID giocatore di Game Center di un utente a gamePlayerID.

publicKeyUrl

string

Obbligatorio. L'URL per recuperare la chiave pubblica di Apple al fine di verificare la firma specificata è firmato da Apple.

signature

string

Obbligatorio. I dati della firma di verifica generati da Apple.

salt

string

Obbligatorio. Una stringa casuale utilizzata per generare la firma specificata.

timestamp

string (int64 format)

Obbligatorio. L'ora in cui la firma è stata creata da Apple, in millisecondi dall'epoca.

idToken

string

Un token ID valido per un account Identity Platform. Se presente, questa richiesta collegherà l'ID utente di Game Center all'account rappresentato da questo token ID.

displayName

string

Il nome visualizzato di Game Center dell'utente.

tenantId

string

L'ID del tenant Identity Platform a cui l'utente sta accedendo.

teamPlayerId

string

L'ID giocatore del team di Game Center dell'utente. Un identificatore univoco per un giocatore di tutti i giochi che distribuisci utilizzando il tuo account sviluppatore. https://developer.apple.com/documentation/gamekit/gkplayer/3174857-teamplayerid

gamePlayerId

string

L'ID giocatore del gioco Game Center dell'utente. Un identificatore univoco per un giocatore del gioco. https://developer.apple.com/documentation/gamekit/gkplayer/3113960-gameplayerid

Corpo della risposta

Messaggio di risposta per accounts.signInWithGameCenter

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "localId": string,
  "playerId": string,
  "idToken": string,
  "refreshToken": string,
  "expiresIn": string,
  "isNewUser": boolean,
  "displayName": string,
  "teamPlayerId": string,
  "gamePlayerId": string
}
Campi
localId

string

L'ID dell'utente autenticato. Sempre presente nella risposta.

playerId

string

L'ID giocatore di Game Center dell'utente.

Passa playerID insieme a gamePlayerID e teamPlayerID per avviare la migrazione dell'ID giocatore di Game Center di un utente a gamePlayerID.

idToken

string

Un token ID Identity Platform per l'utente autenticato.

refreshToken

string

Un token di aggiornamento di Identity Platform per l'utente autenticato.

expiresIn

string (int64 format)

Il numero di secondi che rimangono prima della scadenza del token ID.

isNewUser

boolean

Indica se l'utente che ha eseguito l'accesso è stato creato da questa richiesta.

displayName

string

Nome visualizzato dell'utente autenticato.

teamPlayerId

string

L'ID giocatore del team di Game Center dell'utente. Un identificatore univoco per un giocatore di tutti i giochi che distribuisci utilizzando il tuo account sviluppatore. https://developer.apple.com/documentation/gamekit/gkplayer/3174857-teamplayerid

gamePlayerId

string

L'ID giocatore del gioco Game Center dell'utente. Un identificatore univoco per un giocatore del gioco. https://developer.apple.com/documentation/gamekit/gkplayer/3113960-gameplayerid

Ambiti di autorizzazione

Richiede uno dei seguenti ambiti OAuth:

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

Per ulteriori informazioni, consulta la sezione Authentication Overview.