使用 Economy v2、Unity 和 Android 快速入门
Economy v2 现已正式发布。如需支持和反馈,请访问 PlayFab 论坛。
开始之前
Android Billing API 和 PlayFab 一起为你的客户端提供 IAP 体验:
- 标题 (Titles)
- 描述 (Descriptions)
- 标签 (Tags)
- 类型 (Types)
- 图像 (Images)
- 行为 (Behaviors)
设置客户端应用
本节向你展示如何配置应用以使用 PlayFab、UnityIAP 和 Android Billing API 测试 IAP。 先决条件:- 一个 Unity 项目。
- 已导入并配置为与你的 title 一起工作的 PlayFab Unity SDK。
- 已安装并配置为与你的 Unity 项目一起工作的 Visual Studio 等编辑器。
- 导航到 Services。
- 确保选择了 Services 选项卡。
- 选择你的 Unity Services 个人资料或组织。
- 选择 Create 按钮。

- 接下来,导航到 In-App Purchasing (IAP) 服务。

- 通过设置 Simplify cross-platform IAP 切换开关,确保启用服务。
- 然后选择 Continue 按钮。

- 选择 Import 按钮。

- 验证插件已就位。
- 然后创建一个新的脚本,名为 AndroidIAPExample.cs。

AndroidIAPExample.cs 包含以下代码(有关更多解释,请参见代码注释)。
- 创建一个名为 Code 的新 GameObject。
- 将
AndroidIAPExample组件添加到它(单击并拖动,或)。 - 确保保存场景。

- 验证你的场景已添加到 Scenes In Build 区域。
- 确保已选择 Android 平台。
- 移动到 Player Settings 区域。
- 分配你的 Package Name。
请务必提出你_自己_的软件包名称以避免任何 PlayMarket 冲突。

为 IAP 设置 PlayMarket 应用
本节介绍如何为 PlayMarket 应用启用 IAP 的具体细节。设置应用本身超出了本教程的范围。我们假设你已经_拥有_一个应用,并且已配置为至少发布 Alpha 版本。

- 要达到这一点,你需要上传一个 APK。使用我们在上一节中构造的 APK。
- 将 APK 作为 Alpha 或 Beta 应用上传以启用 IAP 沙盒。
- 配置内容分级包括有关如何在应用中启用 IAP 的问题。
- PlayMarket 不_允许发布者使用或测试 IAP。选择_另一个 Google 账户用于测试目的,并将其添加为你的 Alpha/Beta 构建的测试者。
- 发布应用构建。
- 从菜单中选择 In-app products。
- 如果要求你提供商家账户,请链接或创建一个。
- 选择 Add New Product 按钮。

- 在新产品屏幕上,选择 Managed Product。
- 给它一个描述性的_产品 ID_,例如
100diamonds。 - 选择 Continue。

- PlayMarket 要求你填写标题 (1) 和描述 (2),例如
100 Diamonds和A pack of 100 diamonds to spend in-game。数据物品数据完全来自 PlayFab 服务,只要求 ID 匹配。
- 进一步向下滚动并选择 Add a price 按钮。

- 输入有效的价格,例如”$0.99”(注意价格如何独立地为每个国家/地区转换)。
- 选择 Apply 按钮。

- 最后,滚动回屏幕顶部,将物品的状态更改为 Active。

- 保存授权密钥以将 PlayFab 与 PlayMarket 链接。
- 在菜单中导航到 Services & APIs。
- 然后找到并保存 Base64 版本的密钥。

- 导航到 Home。
- 找到并选择左侧菜单中的 Account details。
- 找到 License Testing 区域。
- 验证你的测试账户在列表中。
- 确保 License Test Response 设置为 RESPOND_NORMALLY。

设置 PlayFab title
我们的最后一步是配置 PlayFab title 以反映我们的产品,并与 Google Billing API 集成。- 选择 Add-ons。
- 然后,选择 Google 加载项。

- 填写你的 Package ID。
- 填写你在上一节中获得的 Google App License Key。
- 通过选择 Install Google 按钮提交你的更改。
Game Manager
- 创建一个新的 Economy Catalog (V2) Currency。
- 编辑 Title 并添加描述 - 例如
Diamonds、Our in-game currency of choice.。 - 添加一个 Friendly ID 让你更容易找到你的货币,
diamonds。 - 选择 Save and publish 完成你的更改。
- 在 Currency 列表中观察你的货币。
- 接下来,创建一个新的 Economy Catalog (V2) Bundle。
- 编辑 Title 并添加描述 - 例如
100 Diamonds Bundle、A pack of 100 diamonds to spend in-game.。
请记住,此数据与 Play Market 物品标题 和描述无关——它是独立的。
- 你可以使用内容类型来组织你的捆绑包 - 例如
appstorebundles。内容类型在 ⚙️ > Title Settings > Economy (V2) 中管理。 - 通过向 Display properties 添加本地化定价来跟踪真实世界的价格。
- 向 Bundle 添加一个新物品。在过滤器中选择 Currencies,选择你在上一集中创建的货币。将 Quantity 设置为你希望在此捆绑包中销售的货币数量。
- 为”GooglePlay”市场添加一个新平台。如果你还没有 GooglePlay 市场,可以在 Economy Settings 页面中创建它。将 Marketplace ID 设置为与你在上一节中创建的 Google Play Console Product ID 匹配。
- 选择 Save and publish 完成你的更改。
- 在 Bundles 列表中观察你的捆绑包。
REST API
接下来,我们可以设置游戏内购,供玩家用他们的货币消费,其中 PlayFab 商店代表游戏内 NPC 供应商:
Game Manager
- 创建一个新的 Economy Catalog (V2) Item。
- 编辑 Title 并添加描述 - 例如 “Golden Sword”、“A sword made of gold.”。
- 你可以添加本地化关键词,以帮助玩家在商店中找到你的物品。添加 Tags 和 Content type 以帮助你整理物品,以便日后通过 API 检索。使用 Display Properties 存储游戏数据,例如护甲值、艺术资产的相对路径或你游戏需要存储的任何其他数据。
- 添加一个新的价格,选择你在上一步中创建的货币。将 Amount 设置为你想要默认设置的价格。你可以稍后在你创建的任何 Store 中覆盖 Price。
- 选择 Save and publish 完成你的更改。
- 在 Items 列表中观察你的物品。
- 最后,创建一个新的 Economy Catalog (V2) Store。
- 编辑 Title 并添加描述 - 例如
Villager Store、A humble store run by a humble villager.。 - 给它一个 Friendly ID 使检索更容易,例如
villagerstore。 - 将你在上一步创建的物品添加到商店。你可以将多个物品添加到商店,并在需要时覆盖任何默认价格。
- 选择 Save and publish 完成你的更改。
- 在 Stores 列表中观察你的商店。
REST API
我们已完成 PlayFab title 的设置。
测试
为了测试目的,使用 Alpha/Beta 版本下载应用。- 确保使用测试账户和真实的 Android 设备。
- 一旦启动应用,你应该会看到 IAP 已初始化,并且_有一个按钮_代表你的物品。
- 选择该按钮。


后续步骤
- 构建一个 Unity UI Toolkit 界面用于购买,以替换演示 IMGUI 显示。
- 创建一个自定义 Unity Logger 来处理 PlayFab 错误并将其显示给用户。
- 向你的 PlayFab 物品图像字段添加图标图像以在 Unity UI 中显示。
