# IAP Catalog 窗口参考

> 请参阅应用内购目录以配置和管理商品属性和商店覆盖。

IAP Catalog 是一个 Unity Editor 工具，您可以在其中定义、组织和管理应用内购商品。配置商品 ID、商品类型（消耗品、非消耗品、订阅）和特定于商店的覆盖，以保持跨平台和商店的定义一致。

要访问 IAP Catalog，请打开 Unity Editor，然后选择 **Services** > **In-App Purchasing** > **IAP Catalog**。

## IAP Catalog 属性##iap-catalog-properties

下表描述了可以在 IAP 目录中配置的属性。

### **产品**##product

配置每个商品的基本属性。

| 设置           | 描述                                                |
| :----------- | :------------------------------------------------ |
| **ID**       | 商品的唯一标识符。这必须与目标商店上使用的标识符匹配。                       |
| **Type（类型）** | 商品类型。选择 Consumable、Non-Consumable 或 Subscription。 |

### 高级商品设置##advanced-product-settings

#### Descriptions##descriptions

提供产品标题和描述以支持目录中的多种语言。

| 设置         | 描述                         |
| :--------- | :------------------------- |
| **locale** | 确定您所在地区可用的应用商店。            |
| **Title**  | 商品的本地化显示名称。                |
| **描述**     | 应用商店中显示的商品的描述性文本，通常是商品的说明。 |

> **Note:**
>
> 使用 Translations 可为商品添加多个本地化标题和描述。

#### 付款##payouts

定义玩家购买商品时收到的商品。

| 设置           | 描述                                   |
| :----------- | :----------------------------------- |
| **Type（类型）** | 付款类型（例如 Currency、Item、Resource 或其他）。 |
| **子类型**      | 所选类型中更具体的类别。                         |
| **数量**       | 交付给玩家的付款金额。                          |
| **数据**       | 可选。将此字段用作要在代码中引用的自定义属性。例如，UI 元素的标志。  |

> **Note:**
>
> 您可以将多个付款添加到单个商品。

有关 `PayoutDefinition` 类的更多信息，请参阅[脚本参考](https://docs.unity3d.com/Packages/com.unity.purchasing@latest?subfolder=/api/UnityEngine.Purchasing.PayoutDefinition.html)。始终可以使用此类在脚本中将付款信息添加到商品。

使用 `PayoutDefinition` 类的付款信息示例：

```cs

public static ProductDefinition Consumable =
            new ProductDefinition("coins", "com.outlinegames.100goldcoins", ProductType.Consumable, true,
                新列表<PayoutDefinition>
                {
                    new PayoutDefinition(PayoutType.Currency, "gold", 100),
                });

```

#### 商店 ID 覆盖##store-id-overrides

为每个受支持的平台指定特定于商店的商品标识符和配置设置。这样可以确保您的商品为每个应用商店正确映射和配置。

| 设置                | 描述                           |
| :---------------- | :--------------------------- |
| **AppleAppStore** | 在 Apple App Store 上注册的商品 ID。 |
| **GooglePlay**    | 在 Google Play 应用商店中注册的商品 ID。 |
| **MacAppStore**   | 在 Mac App Store 上注册的商品 ID。   |

> **Note:**
>
> 默认情况下，Unity IAP 希望商品在所有应用商店中使用相同的商品 ID。尽可能在商店之间使用一致的 ID。有些商店需要不同的 ID。例如，Apple 不允许您在 iOS App Store 和 Mac App Store 中使用相同的商品 ID。

#### Google 配置##google-configuration

定义如何在 Google Play 应用商店中管理商品的价格。

| 设置       | 描述                                |
| :------- | :-------------------------------- |
| "price": | 输入商品的价格。                          |
| **定价模板** | 输入在 Google Play 应用商店中创建的定价模板的 ID。 |

#### Apple 配置##apple-configuration

定义如何在 Apple App Store 上管理商品的价格。

| 设置       | 描述                                 |
| :------- | :--------------------------------- |
| **价格层级** | 选择商品的 Apple 定价层级。                  |
| **定价模板** | 使用 **Select a screenshot** 上传定价模板。 |

> **Note:**
>
> 从目录中生成要导入商店的商品列表时，将使用 Google 和 Apple 配置中设置的价格。但是，商店始终是价格的真实来源，因为它最终决定并向用户收取最终金额。

## 高级设置##advanced-settings

配置初始化和其他导出选项以及特定于 Apple 的选项。

| 设置                              | 描述                                                        |
| :------------------------------ | :-------------------------------------------------------- |
| **自动初始化 UnityIAPServices（推荐）**  | 启用此选项可在应用程序启动时初始化 Unity IAP 服务。建议用于大多数项目。                 |
| **自动初始化 Unity Gaming Services** | 启用此选项可在应用程序启动时初始化 Unity Gaming Services。                  |
| **目录导出**                        | 提供导出目录以供应用商店提交或外部使用的选项。                                   |
| **Apple SKU**                   | App Store Connect 中定义的商品的 Apple Stock Keeping Unit (SKU)。 |
| **Apple Team ID**               | 与您的 Apple 开发者帐户关联的 Apple Team ID。                         |
