Method: recall.linkPersona

將所提供召回工作階段 ID 中編碼的 PGS 玩家主體與遊戲內帳戶建立關聯

HTTP 要求

POST https://games.googleapis.com/games/v1/recall:linkPersona

要求主體

要求主體的資料會採用以下結構:

JSON 表示法
{
  "sessionId": string,
  "persona": string,
  "token": string,
  "cardinalityConstraint": enum (RecallTokensCardinalityConstraint),
  "conflictingLinksResolutionPolicy": enum (ConflictingLinksResolutionPolicy),

  // Union field expiration can be only one of the following:
  "expireTime": string,
  "ttl": string
  // End of list of possible types for union field expiration.
}
欄位
sessionId

string

必要欄位。伺服器產生的不透明字串,會將所有必要資訊編碼,以識別 PGS 播放器 / Google 使用者和應用程式。

persona

string

必要欄位。遊戲內帳戶的穩定 ID。請勿為不同遊戲重複使用相同的人物角色。

token

string

必要欄位。要建立的憑證值。難以在 Play 遊戲中使用,並假設為不穩定 (透過金鑰輪替加密)。

cardinalityConstraint

enum (RecallTokensCardinalityConstraint)

必要欄位。將人物角色連結到遊戲範圍內的玩家時,可觀察的基數限制。

聯集欄位 expiration。選填的權杖到期時間或存留時間。expiration 只能是下列其中一項:
expireTime

string (Timestamp format)

僅限輸入。選填的到期時間。

RFC3339 世界標準時間「祖魯文」格式的時間戳記,含奈秒解析度,最多九個小數位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

ttl

string (Duration format)

僅限輸入。選用的存留時間。

時間長度以秒為單位,最多 9 個小數位數,結尾為「s」。例如:"3.5s"

回應主體

人物角色連結嘗試結果。

如果成功,回應主體即會包含具有以下結構的資料:

JSON 表示法
{
  "state": enum (State)
}
欄位
state

enum (State)

僅供輸出。人物角色連結嘗試狀態。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/androidpublisher

詳情請參閱 OAuth 2.0 總覽

RecallTokensCardinalityConstraint

將人物角色連結到遊戲範圍內的玩家時,可觀察的基數限制。

列舉
ONE_PERSONA_TO_ONE_PLAYER

遊戲內人物角色和 Play 遊戲服務玩家之間的 1:1 基數。

在連結作業結束時,玩家只能留下一個項目,且人物角色應保留在應用程式的範圍內。

這項限制由所選的 ConflictingLinksResolutionPolicy 決定時,是否要建立新連結:

  • 如果已指定 KEEP_EXISTING_LINKS 且提供的人物角色已連結至其他玩家,或是玩家已連結至其他人物角色,系統就不會建立新連結,現有連結則保持原樣。

  • 如果指定 CREATE_NEW_LINK 且提供的人物角色已連結到其他玩家,或玩家已連結至其他人物角色,則舊的連結會遭到移除,改用建立新連結。

ConflictingLinksResolutionPolicy

將人物角色連結至玩家會導致違反指定基數限制時,要套用的解決政策。

列舉

狀態

人物角色連結嘗試狀態。

列舉
PERSONA_OR_PLAYER_ALREADY_LINKED 要求中指定的連結並未建立,因為現有連結會導致新連結違反指定的「RecallTokensCardinalityConstraint」。