遷移作業總覽

Google Play 遊戲服務、遊戲第 1 版 SDK 會使用已淘汰的 Google Sign-In for Android,並將於 2025 年從 Google Play 服務驗證 SDK (com.google.android.gms:play-services-auth) 中移除。新的遊戲應用程式可使用遊戲第 1 版,直到 2025 年為止。移除 Google 登入功能會導致現有遊戲應用程式出現依附元件問題。將現有遊戲應用程式從 games 第 1 版 SDK 遷移至 games 第 2 版 SDK,即可解決 Google 登入功能移除所造成的依附元件問題。

本文將說明遊戲應用程式與各種 SDK 之間的互動情形。本文也將應用程式的功能與 Play 遊戲服務第 1 版和第 2 版遊戲 SDK 的功能進行比較。

SDK 互動

下圖說明 Android 上的遊戲應用程式、Google 行動服務 (GMS) Core、Play 遊戲服務和第三方 (3P) 遊戲伺服器之間的互動情形。這項功能會強調應用程式如何使用 Google 服務進行驗證和遊戲功能,同時與其他第三方系統互動。

games v2 (目前)

Android 上的遊戲應用程式、GMS Core、Play 遊戲服務與第三方 (3P) 遊戲伺服器之間的互動。
Android 上的遊戲應用程式、Google 行動服務核心、Play 遊戲服務和第三方 (3P) 遊戲伺服器之間的互動。(按一下可放大)。

games v1 (舊版)

Android 上的遊戲應用程式、GMS Core、Play 遊戲服務與第三方 (3P) 遊戲伺服器之間的互動。
Android 上的遊戲應用程式、Google 行動服務核心、Play 遊戲服務和第三方 (3P) 遊戲伺服器之間的互動。(按一下可放大)。

以下簡要介紹這些元件和 SDK:

  • 遊戲應用程式。
    • 代表使用者在 Android 裝置上執行的遊戲應用程式。
    • 其中包含兩個主要元件:
      • games 第 1 版或 games 第 2 版 SDK。用戶端 SDK,負責與 Play 遊戲服務互動。
      • Auth SDK:Google Play 服務 Auth SDK 負責處理遊戲第 1 版中的使用者驗證和授權流程。
    • 這兩個 SDK 都使用 AIDL (Android 介面定義語言) 進行通訊,表示不同程序或服務之間的通訊模式。
  • GMS Core 也稱為 Google Play 服務。
    • 這是 Android 上的 Google 專屬層。
    • 遊戲應用程式使用兩個 GMS Core 模組:
      • 遊戲模組:提供遊戲專屬功能,例如排行榜、成就和遊戲狀態管理。
      • 驗證模組。處理使用者驗證和授權作業。
    • 遊戲應用程式中的遊戲和 Auth SDK 會使用 AIDL 介面與對應的模組通訊,表示程序間通訊 (IPC)。

  • Play 遊戲服務網關。
    • 邏輯閘道,可協調 GMS Core 與 Play 遊戲服務伺服器之間的通訊。
    • 處理伺服器通訊的 API 要求、資料轉換和驗證。
  • Play 遊戲服務伺服器。
    • 代表 Play 遊戲服務後端服務,負責儲存遊戲資料、管理使用者帳戶,以及協助多人遊戲功能。
  • 第三方遊戲閘道。
    • 如果您的遊戲應用程式符合第三方 (3P) 應用程式資格,用戶端程式庫會透過第三方遊戲伺服器與 Play 遊戲服務伺服器進行通訊。
    • 表示應用程式也可以透過其他服務供應商進行驗證。
  • 第三方遊戲伺服器。
    • 代表遊戲應用程式可與之互動的選用外部伺服器,可能用於自訂功能或資料管理。
    • 與應用程式通訊的過程會透過第三方遊戲閘道進行。

功能比較

下表比較了 games v1 和 games v2 SDK 的功能:


功能

遊戲第 1 版 SDK

games v2 SDK

驗證

必須與 play-services-auth 整合。

簡化且流暢,不需要 play-services-auth

授權

成功、失敗和重試的其他程式碼。

由 SDK 管理

伺服器存取權杖

可使用 GoogleSigninClient 要求其他 OAuth 2.0 範圍。

登入期間的錯誤處理作業所需的其他程式碼。

不允許額外範圍。

使用 serverAuthcode 的成功/失敗回呼的其他程式碼。

登入程序

使用 GoogleSigninClient

處理自動登入和錯誤處理的樣板程式碼的其他程式碼。

使用 GamesSignInClient

SDK 會處理樣板程式碼、自動登入和錯誤處理。

歡迎彈出式視窗

需要額外的程式碼。
開發人員可以控管廣告的放置位置和時間。

不需要額外程式碼 所有已設定 PGS 第 2 版的遊戲皆提供一致的使用者介面。 。

依附元件

需要 play-services-auth

沒有對 play-services-auth 的個別依附元件。
登出

使用 GoogleSignInClient.signOut

不支援登出 API。

多個 Play 遊戲服務帳戶和個別遊戲設定

無法選取及管理帳戶。

您可以管理每款遊戲的 Play 遊戲服務帳戶。 這樣一來,您就能選取每款遊戲使用的帳戶。