喚回 API

Recall API 可讓遊戲透過 Google 伺服器儲存「喚回符記」,以管理 Google Play 遊戲服務 (PGS) 使用者與遊戲內帳戶之間的連結。以下是 Recall API 的使用情境範例。

  1. 使用者在玩遊戲時,開發人員會透過身分識別系統追蹤使用者進度,同時使用 PGS 與其他驗證方法將使用者登入遊戲。在此範例中,使用者已登入 PGS 帳戶「Laura」,並透過開發人員的身分識別系統建立名為「Racer94」的遊戲內帳戶。當使用者玩遊戲時,開發人員的遊戲伺服器會同步處理遊戲進度。

    使用者透過 PGS 登入並擁有遊戲內帳戶

  2. 此外,開發人員會透過 Google 儲存喚回符記,該符記會對應至使用者的遊戲內帳戶。Google 會根據使用者的 PGS 設定檔自動儲存喚回符記。

    遊戲伺服器透過 Google 伺服器儲存喚回符記

  3. 使用者現在決定首次在 Google Play 遊戲電腦版上玩遊戲。系統會自動透過 PGS 帳戶驗證使用者,而遊戲用戶端會檢查該 PGS 使用者是否存有遊戲進度。接著,遊戲伺服器向 Google 查詢該 PGS 帳戶是否存有任何符記。假設有的話,Google 就會傳回喚回符記,而遊戲伺服器會使用該符記尋找與使用者相關聯的「Racer94」帳戶,並還原其遊戲進度。由於 PGS 驗證體驗順暢無阻,使用者不必輸入使用者名稱或密碼,應用程式就能還原使用者的進度。此外,開發人員可使用 PGS 驗證功能搭配現有的身分識別系統,並藉由 Google 來儲存玩家進度與 PGS 帳戶之間的連結。

    遊戲伺服器透過喚回符記還原進度

如先前的範例所示,Recall API 執行了兩個主要動作:

  • 使用者透過遊戲內帳戶登入時,向 Google 儲存權杖。

  • 擷取使用者的權杖,以便還原遊戲內帳戶。

除了喚回符記,Recall API 也會要求與遊戲內帳戶對應的穩定 ID (稱為「人物角色」)。您可以將人物角色視為開發人員身分識別系統中代表使用者遊戲內帳戶的標籤,而喚回符記就是用來將使用者遊戲內帳戶還原到遊戲的金鑰。在不同的 PGS 專案中,人物角色和符記值皆不得重複使用。此外,雖然喚回符記可能會隨著時間變更,但人物角色應隨著使用者的遊戲內帳戶保持穩定不變。

儲存及擷取喚回符記的技術流程

本節說明儲存及擷取喚回符記時,遊戲用戶端和伺服器與 Google 伺服器之間的技術流程。

步驟 1:驗證 PGS 使用者並擷取工作階段 ID

遊戲會初始化 PGS SDK,並嘗試透過 PGS 驗證使用者。

透過 PGS 驗證使用者

假設使用者已通過驗證,請在遊戲用戶端上要求 Play 遊戲 SDK 的工作階段 ID,並向 Google 的 OAuth 後端要求 OAuth 2.0 符記。工作階段 ID 和 OAuth 2.0 符記可用來與 Google 遊戲後端連線。

開發人員要求工作階段 ID

步驟 2:擷取任何可用的喚回符記

要求與 PGS 使用者帳戶相關聯的任何喚回符記。如有符記的話,請前往步驟 3a 並還原進度。否則,如果是新使用者且沒有任何符記,則請前往步驟 3b 並儲存新符記

開發人員擷取喚回符記

步驟 3a:如有符記,請還原進度

如有符記的話,請擷取符記並加以解密,然後還原使用者資料。

開發人員從喚回符記還原資料

步驟 3b:如沒有符記,請儲存符記

由於沒有符記,因此系統不會還原任何進度。使用者接著透過開發人員身分識別系統進行平台驗證,或建立新帳戶 (如果沒有帳戶)。請注意,這不是透過 PGS 進行驗證 (因為這項操作早已完成),而是使用 PGS 以外的開發人員身分識別系統驗證。

使用者透過遊戲內帳戶驗證

建立加密的喚回符記,該符記會將使用者的遊戲內帳戶編碼,並連同工作階段 ID 和 OAuth 2.0 符記傳送給 Google。這時 Google 就會將已傳送的喚回符記與玩家 PGS 帳戶建立關聯。

開發人員儲存喚回符記

沒有 Play 遊戲服務設定檔的使用者流程

您可以透過無設定檔模式,為尚未建立 Play 遊戲服務設定檔的使用者儲存召回權杖。不過,有兩項重要注意事項:

  • 如果使用者沒有 Play 遊戲服務設定檔,您就無法擷取權杖。使用者在第二部裝置上嘗試透過 Play 遊戲服務登入遊戲時,系統會自動提示建立設定檔。
  • 請務必遵守其他指南,確保您提供適當的通知,說明下列項目並取得適當的使用者同意聲明:
    • 您與 Google 分享資料,以便啟用 Play 遊戲帳戶連結功能。
    • 可管理這項分享功能的設定 (例如 Play 遊戲設定)。
    • 這類資料的處理方式受《Google 隱私權政策》規範。

儲存權杖和角色配對

沒有 Play 遊戲服務設定檔的使用者開啟遊戲

  1. 沒有 Play 遊戲服務設定檔的使用者開啟已啟用無設定檔召回權杖的遊戲。
  2. 遊戲 SDK 會觸發自動平台驗證,但由於使用者沒有 PGS 個人資料,因此驗證失敗。
  3. Games SDK 會顯示資訊方塊,告知使用者遊戲已整合 Google 服務。這個訊息列可供操作,使用者可以停用回憶功能,直到建立設定檔為止。
  4. 遊戲要求回憶存取權。請注意,如果裝置上有 Play 遊戲服務設定檔,或裝置上沒有 Google 帳戶,Play 遊戲服務會拒絕召回存取要求。在這種情況下,遊戲應繼續執行,但不得使用 PGS。
  5. 使用者透過遊戲內帳戶登入後,遊戲會為使用者建立與遊戲內帳戶相應的符記和人物角色配對。遊戲會將這組配對資訊儲存在 Google。如果使用者登入其他遊戲內帳戶,遊戲稍後可能會儲存更多權杖。

在新裝置上啟動遊戲

  1. 使用者在裝置上開啟遊戲,且遊戲已啟用「在沒有 Play 遊戲服務設定檔的情況下使用召回權杖」設定,但使用者沒有 Play 遊戲服務設定檔。
  2. 遊戲會記錄沒有設定檔的召回權杖,如「儲存權杖和角色配對」一文所述。
  3. 使用者在其他裝置上開啟同一個遊戲,且裝置設定相同帳戶。
  4. Games SDK 會觸發個人資料建立作業。使用者可以查看及拒絕先前儲存的召回權杖。使用者會在當時建立 Play 遊戲服務設定檔。
  5. 系統會自動完成 PGS 的平台驗證,遊戲也會收到驗證狀態。
  6. 遊戲會照常擷取使用者的召回權杖。

後續步驟

如要將 Recall API 與您的用戶端和遊戲伺服器整合,請按照這份指南操作