如果 Google Play 遊戲電腦版原生遊戲直接呼叫 Play 結帳 API,您必須將遊戲遷移至使用電腦版 SDK。
視使用的遊戲引擎而定,您可以整合 C++ SDK 或 C# SDK。請參閱範例專案,瞭解如何將原生遊戲遷移至 SDK。
設定與準備
本節說明如何從以 API 為基礎的解決方案,遷移至 Google Play 遊戲電腦版 Native SDK。
指令列引數
Google Play 遊戲電腦版 Native SDK 會在遊戲程序啟動期間,依據傳入的部分命令列引數驗證使用者。這些引數必須傳遞至呼叫 Initialize SDK 的程序。如果遊戲啟動涉及多個程序,請務必確認所有引數都傳遞至最終使用 SDK 的程序。請參閱設定的「支援多個遊戲程序」步驟。
API 對應
如要完成遷移,您必須移除所有對 Play 伺服器的直接 API 呼叫。SDK 中有對應的函式呼叫,可達到相同功能。本節列出各項功能的對應項目。
Google 登入
Google 登入 (又稱「使用 Google 帳戶登入」) 是一種 OAuth 驗證方法,可讓使用者透過 Google 帳戶一鍵驗證身分。在以 API 為基礎的專案中,您可以將玩家的帳戶與他們的購買交易建立關聯。如果是以 SDK 為基礎的解決方案,則不需要建立這項關聯。
以 SDK 為基礎的解決方案會使用Google Play 遊戲用戶端的 Google 帳戶,該帳戶已與玩家的玩家設定檔和權利建立關聯。這樣一來,SDK 就能透過 IPC 與 Google Play 遊戲用戶端安全通訊,為玩家提供更流暢的體驗,並為開發人員提供更安全的環境。
請盡快呼叫 Initialize SDK,而非 Google 登入。請根據錯誤代碼採取適當行動,為遊戲的執行階段提供安全環境。
取得產品清單
在 API 解決方案中,後端伺服器會使用 Play Developer API inappproduct.gets 端點擷取產品清單。
在 SDK 中,使用 QueryProductDetails 函式直接在用戶端擷取應用程式內商品清單。
促進購買
在 API 解決方案中,後端伺服器會使用 Play Developer API purchases.products.get 端點擷取使用者購買交易。
在 SDK 中,直接從遊戲用戶端使用 QueryPurchases 函式。
啟動購買流程
在 API 解決方案中,啟動購買流程需要呼叫多個端點,才能完成設定並取得必要權杖。
在 SDK 中,呼叫 BillingClient 的 LaunchPurchaseFlow 函式,啟動程序。SDK 會處理所有必要工作。
處理購買交易
處理使用者的購買交易包括在成功驗證交易合法性後,確認並使用該交易。API 解決方案和 SDK 解決方案都會建議您從後端完成步驟,以確保安全性。
API 解決方案和 SDK 解決方案的程序類似:
從購買交易中擷取 purchaseToken,例如 API 解決方案中的 ProductPurchase.purchaseToken,或是 SDK 解決方案中的 ProductPurchaseDetails 的 purchase_token,然後傳送至後端進行驗證。
送交測試
如要提交遊戲以供測試,請按照下列步驟操作。
提交套件
使用 SDK 的遊戲必須以 Windows 應用程式套件格式封裝,並透過 Play 管理中心上傳。請參閱說明文件,瞭解如何將遊戲封裝為 Windows 應用程式套件:
- 自行管理發布:安裝程式發布
- Play 控管型發布功能:Play 控管型發布功能