> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 玩家库存快速入门

> 使用 PlayFab Beta SDK 对玩家进行身份验证、搜索目录、购买物品并验证它出现在玩家的 Economy v2 库存中。

# 快速入门：向玩家库存添加你的第一个物品

<Info>
  Economy v2 现已正式发布。如需支持和反馈，请访问 [PlayFab 论坛](https://community.playfab.com)。
</Info>

通过使用 PlayFab Beta SDK 购买物品并检查其是否已添加到玩家的库存中，熟悉玩家库存。在获取实体令牌以通过 API 与你的游戏交互后，你在目录中搜索物品，购买该物品，然后获取玩家库存以找到已购物品。

## 先决条件

* 一个 [PlayFab 开发者账户](https://developer.playfab.com)
* PlayFab Beta SDK（你可以在 [Postman 快速入门](/services/playfab/sdks/postman/postman-quickstart#adding-playfab-collections) 上找到更多信息）
* 目录中至少有一个物品（你可以在 [Economy v2 快速入门](/services/playfab/economy-monetization/economy-v2/quickstart) 上找到更多信息）
* 至少一个具有足够虚拟货币来购买物品的玩家

## 以玩家身份登录

你首先需要登录玩家以接收本快速入门其余 API 调用所需的安全令牌。你可以在 [玩家身份验证](/services/playfab/identity/player-identity/login) 页面找到更多信息。

## 搜索物品

要在目录中查找物品，请调用 `Search`。在调用正文中：

```json theme={null}
{
  "Search": "[Item Title]",
  "Top": 1
}
```

* `Search` 是搜索字符串，与目录中每个物品的 Title、Description 和 Keywords 进行模糊搜索
* `Top` 是一个整数，用于确定要返回多少个结果——在本例中，我们只需要一个

<Note>
  你可以在 [搜索快速入门](/services/playfab/economy-monetization/economy-v2/catalog/search) 中了解更多字段。
</Note>

在响应中，获取以下字段：

* `Items` > `Id` - 物品的目录 ID
* `Items` > `PriceOptions` > `Prices` > `Amounts` > `ItemId` - 用于购买该物品的虚拟货币的 ID
* `Items` > `PriceOptions` > `Prices` > `Amounts` > `Amount` - 购买该物品所需的虚拟货币数量

<Note>
  只有 Title Entities 能够为物品设置价格。
</Note>

## 购买物品

要购买物品，请调用 `PurchaseInventoryItems`。在调用正文中：

```json theme={null}
{
  "Item": {
    "Id": "{{ItemID}}",
  },
  "Amount": 1,
  "PriceAmounts": [
    {
      "ItemId": "{{CurrencyId}}",
      "Amount": 15
    }
  ]
}
```

* `Item.Id` 是物品的 ID（从上一步的 `Search` 响应中提取）
* `Amount` 是玩家购买的物品数量
* `ItemId` 是用于购买该物品的虚拟货币的 ID（从上一步的 `Search` 响应中提取）
* `Amount` 是购买该物品所需的虚拟货币数量（从上一步的 `Search` 响应中提取）

## 获取玩家的库存物品

通过 `GetInventoryItems` 查看玩家新购买的物品。在调用中，确保正文为空——你可以在正文中指定实体，但不是必需的，因为信息已经通过标头中的实体令牌传递。

响应包含玩家拥有的每个物品的 ID 和每个物品的数量。新购买的物品在玩家的库存中。

<Note>
  如果玩家的库存中已有具有相同 `StackId` 的该物品，购买后你不会看到另一个物品实例——相反，你会看到 `Amount` 字段增加。
</Note>

## 疑难解答

* 资金不足
  * 如果你调用 `PurchaseInventoryItems` 并收到 `422: InsufficientFunds` 错误，则玩家没有足够的虚拟货币来购买物品。你可以通过调用 `AddInventoryItems`（需要 title entity token）或在 Game Manager 中导航到 **\[Title]** > **Players** > **\[Player]** > **`Inventory (V2)`** 来向玩家授予虚拟货币。
* 无法以指定价格购买该物品。
  * 如果你调用 `PurchaseInventoryItems` 并收到 `1071` 错误代码，则 `PriceAmounts` 字段与目录中指定的价格不匹配。

## 后续步骤

现在你已经购买了玩家的第一个物品，你可以消耗该物品，将该物品添加到商店以进行销售，并且可以创建和购买包含该物品的捆绑包。

<Note>
  \[!div class="nextstepaction"] [玩家库存教程](/services/playfab/economy-monetization/economy-v2/tutorials/getting-started-with-unity-and-android)
</Note>

<Note>
  \[!div class="nextstepaction"] [商店](/services/playfab/economy-monetization/economy-v2/catalog/stores)
</Note>

<Note>
  \[!div class="nextstepaction"] [捆绑包](/services/playfab/economy-monetization/economy-v2/catalog/bundles)
</Note>


## Related topics

- [玩家数据快速入门](/zh-CN/services/playfab/player-progression/player-data/quickstart.md)
- [玩家自定义属性快速入门](/zh-CN/services/playfab/live-service-management/game-configuration/segmentation/player-custom-properties-qs.md)
- [Economy（旧版）快速入门](/zh-CN/services/playfab/economy-monetization/economy/quickstart.md)
- [快速入门](/zh-CN/services/playfab/economy-monetization/economy-v2/quickstart.md)
- [物品（旧版 Economy）快速入门](/zh-CN/services/playfab/economy-monetization/economy/items/quickstart.md)
