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 |
Obbligatorio. L'ID giocatore di Game Center dell'utente. È stato ritirato da Apple. Passa |
publicKeyUrl |
Obbligatorio. L'URL per recuperare la chiave pubblica di Apple al fine di verificare la firma specificata è firmato da Apple. |
signature |
Obbligatorio. I dati della firma di verifica generati da Apple. |
salt |
Obbligatorio. Una stringa casuale utilizzata per generare la firma specificata. |
timestamp |
Obbligatorio. L'ora in cui la firma è stata creata da Apple, in millisecondi dall'epoca. |
idToken |
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 |
Il nome visualizzato di Game Center dell'utente. |
tenantId |
L'ID del tenant Identity Platform a cui l'utente sta accedendo. |
teamPlayerId |
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 |
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 |
L'ID dell'utente autenticato. Sempre presente nella risposta. |
playerId |
L'ID giocatore di Game Center dell'utente. Passa |
idToken |
Un token ID Identity Platform per l'utente autenticato. |
refreshToken |
Un token di aggiornamento di Identity Platform per l'utente autenticato. |
expiresIn |
Il numero di secondi che rimangono prima della scadenza del token ID. |
isNewUser |
Indica se l'utente che ha eseguito l'accesso è stato creato da questa richiesta. |
displayName |
Nome visualizzato dell'utente autenticato. |
teamPlayerId |
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 |
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.