Memproses login atau pendaftaran pengguna dengan kredensial Game Center iOS. Jika login berhasil, token ID dan token refresh Identity Platform baru akan dikeluarkan untuk pengguna yang diautentikasi. ID paket diperlukan di header permintaan sebagai x-ios-bundle-identifier
.
Kunci API diperlukan dalam permintaan untuk mengidentifikasi project Google Cloud.
Apple telah menghentikan penggunaan kolom playerID
. Firebase SDK platform Apple akan menggunakan gamePlayerID
dan teamPlayerID
mulai versi 10.5.0 dan yang lebih baru. Mengupgrade ke SDK versi 10.5.0 atau yang lebih baru akan mengupdate integrasi yang menggunakan playerID
agar dapat menggunakan gamePlayerID
dan teamPlayerID
. Saat melakukan panggilan ke signInWithGameCenter
, Anda harus menyertakan playerID
beserta kolom baru gamePlayerID
dan teamPlayerID
agar berhasil mengidentifikasi semua pengguna yang ada.
Upgrade integrasi login Game Center yang ada ke SDK versi 10.5.0 atau yang lebih baru tidak dapat dibatalkan.
Permintaan HTTP
POST https://identitytoolkit.googleapis.com/v1/accounts:signInWithGameCenter
URL menggunakan sintaks gRPC Transcoding.
Isi permintaan
Isi permintaan memuat data dengan struktur berikut:
Representasi JSON |
---|
{ "playerId": string, "publicKeyUrl": string, "signature": string, "salt": string, "timestamp": string, "idToken": string, "displayName": string, "tenantId": string, "teamPlayerId": string, "gamePlayerId": string } |
Kolom | |
---|---|
playerId |
Wajib. ID pemain Game Center pengguna. Tidak digunakan lagi oleh Apple. Teruskan |
publicKeyUrl |
Wajib. URL untuk mengambil kunci publik Apple guna memverifikasi tanda tangan yang diberikan ditandatangani oleh Apple. |
signature |
Wajib. Data tanda tangan verifikasi yang dihasilkan oleh Apple. |
salt |
Wajib. String acak yang digunakan untuk membuat tanda tangan yang diberikan. |
timestamp |
Wajib. Waktu saat tanda tangan dibuat oleh Apple, dalam milidetik sejak epoch. |
idToken |
Token ID yang valid untuk akun Identity Platform. Jika ada, permintaan ini akan menautkan ID pemain Game Center ke akun yang diwakili oleh token ID ini. |
displayName |
Nama tampilan Game Center pengguna. |
tenantId |
ID tenant Identity Platform tempat pengguna login. |
teamPlayerId |
ID pemain tim Game Center pengguna. ID unik untuk pemain dari semua game yang Anda distribusikan menggunakan akun developer. https://developer.apple.com/documentation/gamekit/gkplayer/3174857-teamplayerid |
gamePlayerId |
ID pemain game Game Center pengguna. ID unik untuk pemain game. https://developer.apple.com/documentation/gamekit/gkplayer/3113960-gameplayerid |
Isi respons
Pesan respons untuk accounts.signInWithGameCenter
Jika berhasil, isi respons memuat data dengan struktur berikut:
Representasi JSON |
---|
{ "localId": string, "playerId": string, "idToken": string, "refreshToken": string, "expiresIn": string, "isNewUser": boolean, "displayName": string, "teamPlayerId": string, "gamePlayerId": string } |
Kolom | |
---|---|
localId |
ID pengguna yang diautentikasi. Selalu ada dalam respons. |
playerId |
ID pemain Game Center pengguna. Teruskan |
idToken |
Token ID Identity Platform untuk pengguna yang diautentikasi. |
refreshToken |
Token refresh Identity Platform untuk pengguna yang diautentikasi. |
expiresIn |
Jumlah detik hingga masa berlaku token ID berakhir. |
isNewUser |
Apakah pengguna yang login dibuat oleh permintaan ini. |
displayName |
Nama tampilan pengguna yang diautentikasi. |
teamPlayerId |
ID pemain tim Game Center pengguna. ID unik untuk pemain dari semua game yang Anda distribusikan menggunakan akun developer. https://developer.apple.com/documentation/gamekit/gkplayer/3174857-teamplayerid |
gamePlayerId |
ID pemain game Game Center pengguna. ID unik untuk pemain game. https://developer.apple.com/documentation/gamekit/gkplayer/3113960-gameplayerid |
Cakupan otorisasi
Memerlukan salah satu cakupan OAuth berikut:
https://www.googleapis.com/auth/identitytoolkit
https://www.googleapis.com/auth/cloud-platform
Untuk mengetahui informasi selengkapnya, lihat Authentication Overview.