创建应用内商品

借助 Google Play 结算系统,您可以提供向用户收取一次性费用的应用内商品(称为“应用内商品”)。应用内商品可以包括您在 Google Play 上的应用中提供的虚拟商品(例如游戏等级或药水)以及付费服务。

重要提示:Google Play 开发者计划政策服务费适用于所有应用内商品(包括一次性商品和订阅项目)。

适用范围

如果您所在的国家/地区支持商家注册,您就可以使用 Google Play 结算系统。

如果您位于受支持的国家/地区,而且希望在自己的应用中使用 Google Play 结算系统相关功能,请设置付款资料并查看 Google Play 结算系统 API 文档

当您创建完应用内商品后,就可以向使用最新版 Google Play 商店的用户提供此商品了。

所需权限

如要提供应用内商品,您需要在应用的 APK 清单文件中声明 com.android.vending.BILLING 权限。如果您在全球范围内分发应用,则仍可以在所有国家/地区发布使用 com.android.vending.BILLING 权限的应用。

创建应用内商品

创建单个应用内商品

在创建商品前,请务必认真规划您的商品 ID。在您的应用中,商品 ID 必须是独一无二的,在创建后无法更改或重复使用。
  • 商品 ID 必须以数字或小写字母开头,可包含数字 (0-9)、小写字母 (a-z)、下划线 (_) 和句点 (.)。
  • 商品一经创建,您便无法再更改或重复使用其商品 ID。
  • 注意:商品 ID android.test 以及所有以 android.test 开头的商品 ID 均不可使用。

如要创建应用内商品,请按以下步骤操作:

  1. 打开 Play 管理中心,然后转到应用内商品页面(创收 > 商品 > 应用内商品)。
  2. 点击创建商品
  3. 输入商品详情。
    • 商品 ID:您的应用内商品的唯一 ID。
    • 名称:商品的简称(最多 55 个字符,但我们建议您将名称长度控制在 25 个字符以内,以便名称能够在所有环境中正确显示),例如“沉睡药水”。
    • 说明:对商品的详细描述(最多 200 个字符),例如“立即让服用者陷入沉睡”。
    • 图标:为您的商品采用独一无二的准确图片。图片中不得包含文字、促销信息或品牌信息。系统会在商品详情和购买流程中显示您的商品图标。
      • 32 位 PNG
      • 512 x 512 像素
      • 大小上限为 1 MB
    • 价格:输入价格(采用您的本地货币)或选择定价模板
    • 多件购买:允许在购买此商品时进行多件结帐。用户可以在所在国家/地区规定的限量内购买多件该商品。请注意以下信息:
      • 如需在 Play 管理中心内配置多件结账功能,您需要将 Google Play 结算库 4.0 集成到应用中。请访问 Android 开发者网站,了解如何将 Google Play 结算库集成到您的应用中
      • 在部分国家/地区不支持多件结账
      • 在大多数支持多件结账功能的国家/地区,SKU 的价格限值约为 100 美元。若要支持多件结账,您需要调整价格(税前),使其低于各个国家/地区规定的限值。
    • 仅限 Play Points 兑换:将您的商品设为仅可通过 Google Play Points 兑换。
  4. 保存您的更改,然后点击启用,将您的应用内商品提供给用户。
    • 若要让商品可供购买,必须将商品的状态设为已启用,并且必须发布其所属应用。
    • 如果您使用的是测试帐号,那么已启用的商品在未发布的应用中也可供用户购买。如需了解详情,请访问 Android 开发者网站

语言和翻译

应用内商品使用的默认语言与其所属应用相同。如要添加特定语言的翻译,请选择某个应用内商品,然后点击管理翻译并应用您所需的语言。详细了解如何翻译您的应用

批量创建多个应用内商品

如要同时创建多个应用内商品,您可以上传包含每件商品详细信息的 CSV 文件。
CSV 文件使用英文逗号 (,) 和英文分号 (;) 来分隔数据值。英文逗号用来分隔主要数据值,英文分号用来分隔次要数据值。
当您为应用内商品创建 CSV 文件时,请在第一行指定 CSV 语法,然后在下面的行中输入商品的详细信息。
重要提示:CSV 文件中的每件商品都必须在一行内完整显示。

上传应用内商品的 CSV 文件

  1. 打开 Play 管理中心,然后转到应用内商品页面(创收 > 商品 > 应用内商品)。
  2. 点击导入
    • 只有当 CSV 文件中的 Product ID 值与商品列表中现有应用内商品的 Product ID 值一致时,通过上传 CSV 文件导入多个商品才会覆盖现有商品。覆盖商品不会导致未包含在 CSV 文件中的应用内商品被删除。
  3. 拖放要上传的 CSV 文件,或点击上传

导出现有应用内商品的 CSV 文件

如果您已在 Play 管理中心逐一创建了应用内商品,当您要使用 CSV 文件创建应用内商品时,可以改为使用导出的 CSV 文件。

  1. 打开 Play 管理中心,然后转到应用内商品页面(创收 > 商品 > 应用内商品)。
  2. 点击导出

查看 CSV 文件示例

以下为 CSV 语法使用方式和三种应用内商品的示例:
  • 第一个示例是定义两种不同语言版本(en_USes_ES)的名称和说明,并使用定价模板定义商品的价格。
  • 第二个示例未使用定价模板,而是针对默认国家/地区(美国)指定价格。Play 管理中心会根据当前汇率和当地相关的定价模式,为应用分发的所有其他国家/地区自动设置价格。
  • 第三个示例也未使用定价模板,而是针对应用分发的各个国家/地区手动指定商品价格。

CSV 语法示例

Product ID,Published State,Purchase Type,Auto Translate,Locale; Title; Description,Auto Fill Prices,Price,Pricing Template ID

应用内商品示例

示例 1

basic_sleeping_potion,published,managed_by_android,false,en_US; Basic Sleeping Potion; Puts small creatures to sleep.; es_ES; Poción básica de dormir; Causa las criaturas pequeñas ir a dormir.,false,,4637138456024710495

示例 2

standard_sleeping_potion, published,managed_by_android,false,en_US; Standard Sleeping Potion; Puts all creatures to sleep for 2 minutes.,true, 1990000,

示例 3

invisibility_potion,published, managed_by_android,false,en_US; Invisibility Potion; Invisible to all enemies for 5 minutes.,false, US; 1990000; BR; 6990000; RU; 129000000; IN; 130000000; ID; 27000000000; MX; 37000000,

CSV 文件的数据值

在应用内商品的 CSV 文件中,每一行可包含以下值,不过每行至少要有一个值是未定义的:
Product ID

在 CSV 文件中设置该值,效果相当于在创建新的应用内商品时输入商品 ID。

如果您指定将某个 Product ID 分配给商品列表中已存在的应用内商品,那么您在 CSV 文件中指定的值会覆盖现有应用内商品的数据。

Publish State 该值必须设置为 publishedunpublished,效果相当于将应用内商品设置为开放购买未开放购买
Purchase Type

该值必须设置为 managed_by_android

Auto Translate

该值必须设置为 false,因为系统不支持自动翻译应用内商品的详细信息。

如果您要为应用内商品提供名称和说明的翻译,请在 Locale 值中明确指定这些翻译内容。

LocaleTitle  Description

如果您只为某个商品指定一个语言区域,则必须指定应用的默认语言区域以及该商品的默认标题和说明:

app_default_locale; item_default_title; item_default_description;

设置 Locale 值时,您可以使用添加商品详情翻译时系统显示的任何语言代码。

注意:在指定 TitleDescription 的值时,请使用反斜杠转义分号 (\;) 和反斜杠 (\\) 字符。

如果您要包含名称和说明的翻译版本,则必须列出默认的语言区域、名称和说明,后面再加上各个翻译版本的语言区域、名称和说明。在以下示例中,应用内商品使用 en_US(美国,英语)作为默认语言区域,翻译版本则是 es_ES(西班牙,西班牙语):

en_US; Invisibility Cloak; Makes you invisible.; es_ES; Capote Invisible; Se vuelven invisible.

注意:应用只有一种默认语言,但每个应用内商品都有自己的翻译列表。尽管整个 CSV 文件中每件商品 Locale 值的第一个语言区域必须相同,但其他语言区域可以各不相同。

Auto Fill PricesCountry Price

您可以将 Auto Fill Prices 设置为 truefalse。如果应用内商品使用定价模板,则应将 Auto Fill Prices 设置为 false,并且不应为 Price 设置值。

注意:当您在 CSV 文件中指定商品价格时,请以微单位提供价格,1000000 个微单位等于 1 个单位的真实货币。

使用自动填充价格

以下部分说明了 Auto Fill Prices 的值会如何影响 CountryPrice 值的语法和含义。

如果将 Auto Fill Prices 设置为 true,则表示您只指定了商品的默认价格,而没有添加 Country 值。

就以下情况举例说明:

  • 应用的默认语言区域是 en_US
  • 应用内商品的默认不含税价格为 1.99 美元。
  • 您想让系统自动填充其他国家/地区的价格。

您必须在 CSV 文件内数据行的末尾,将 Auto Fill PricesPrice 的值设置为:true,1990000,

根据国家/地区自行设置价格 

如果将 Auto Fill Prices 设置为 false,则可以根据应用分发的所有国家/地区(包括应用的默认语言区域对应的国家/地区)指定一系列 CountryPrice 值。每个 Country 值都是一个 ISO 国家/地区代码,该代码由两个大写字母组成,代表应用分发的国家/地区。

注意:您必须针对应用的每个目标国家/地区,分别提供国家/地区代码和价格。如要查看和修改应用的目标国家/地区列表,请使用正式版页面上的国家/地区标签页。

每个 Price 值分别代表在相应国家/地区以当地货币购买该商品所需的微单位数量。

例如,如果您在其他国家/地区按以下价格(已包含所有税费)提供应用:

  • 巴西:6.99 雷亚尔
  • 俄罗斯:129 卢布
  • 印度:130 卢比
  • 印度尼西亚:27000 印尼盾
  • 墨西哥:37 比索

您可以在 CSV 文件内数据行的末尾,按如下方式设置 Auto Fill PricesCountryPrice 的值:

false, BR; 6990000; RU; 129000000; IN; 130000000; ID; 27000000000; MX; 37000000;

Pricing Template ID

如果商品已关联至定价模板,则应将 Auto Fill Prices 设置为 false,并且不应为 Price 列设置值。如果商品未关联至定价模板,则不应为 Pricing Template ID 设置值;而应根据应用内商品要采用的定价方式来设置 Auto Fill PricesCountryPrice

如果您导入 CSV 文件,则可以更新应用内商品与定价模板之间的关联。如要将商品与特定的定价模板相关联,请将 Pricing Template ID 值设置为该定价模板的 ID。如要取消应用内商品与所有定价模板的关联,请不要为该商品的 Pricing Template ID 设置值。

您最多可以将 1000 个应用价格或应用内商品价格关联到某个特定的定价模板。因此,在一个 CSV 文件内,请不要为超过 1000 个数据行指定相同的 Pricing Template ID 值。

该内容对您有帮助吗?
您有什么改进建议?

需要更多帮助?

登录可获取更多支持选项,以便快速解决您的问题

搜索
清除搜索查询
关闭搜索框
Google 应用
主菜单
搜索支持中心
true
92637
false