如果您的 Google Play 游戏电脑版原生游戏直接调用 Play 结算 API,则必须迁移游戏以使用 PC SDK。
您可以根据所用的游戏引擎,集成 C++ SDK 或 C# SDK。请参阅示例项目,其中展示了可用于将原生游戏迁移到 SDK 的示例。
设置和准备
本部分介绍了从基于 API 的解决方案迁移到 Google Play Games on PC Native SDK 的步骤。
命令行实参
Google Play Games on PC Native SDK 依赖于游戏进程启动期间传入的一些命令行实参来对用户进行身份验证。这些实参需要传递给调用 Initialize SDK 的进程。如果游戏启动涉及多个进程,您必须验证所有实参是否都传递给了最终使用 SDK 的进程。请查看设置的支持多游戏进程步骤。
API 映射
如需完成迁移,您需要移除对 Play 服务器的所有直接 API 调用。SDK 中有对应的函数调用来实现相同的功能。本部分列出了每项功能的映射。
Google 登录
Google 登录(也称为使用 Google 账号登录)是一种 OAuth 身份验证方法,可为用户提供一键式身份验证选项,让用户使用自己的 Google 账号进行身份验证。在基于 API 的项目中,您需要将玩家的账号与其购买交易相关联。基于 SDK 的解决方案不需要进行此关联。
基于 SDK 的解决方案使用已与玩家的游戏玩家个人资料和授权相关联的 Google Play Games 客户端的 Google 账号。这样一来,SDK 就可以通过 IPC 与 Google Play Games 客户端安全地通信,从而为玩家提供更顺畅的体验,并为开发者提供更安全的环境。
请尽早调用 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 App Bundle 格式打包,并通过 Play 管理中心上传。请参阅相关文档,了解如何将游戏打包为 Windows App Bundle:
- 自管式发布:安装程序发布
- Play 自管式发布:Play 自管式发布