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 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度,且最多 9 個小數位數。範例:"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 (如已建立)。