应用内购买概述


应用内购买概述

使用应用内购买 (IAP) API,您的应用可以在自身中呈现、处理和履行数字内容和订阅的购买。亚马逊支持适用于 Android 应用和 Web 应用的 IAP API。本页概括介绍 IAP API。

什么是应用内购买 (IAP)?

通过应用内购买 (IAP),应用的用户可以在应用中购买各种类型的数字项目,如游戏的额外生命或高级内容的订阅。

以下情景描述 IAP 的潜在使用案例:

  • 为您的应用创建“免费增值”模式,其中,应用本身是免费的,但您对高级服务或功能收费。
  • 允许您的客户购买项目来增强他们的游戏体验,例如货币、额外的移动或生命。
  • 通过允许用户购买此内容的访问权,解锁红利关卡或迷你游戏。
  • 使客户能够订阅您的应用中提供的内容。

IAP API 处理有关购买流程、付款处理、向您的应用提供收据以及管理可购买内容的权限的详细信息,以便您不必自己对这些事情进行编码。

亚马逊在 IAP 中的角色

Amazon Appstore 是 IAP API 工作流程的不可或缺的组成部分。亚马逊执行购买工作流程,从客户决定购买项目时开始,到亚马逊为应用提供购买收据或状态代码(如果购买失败)时结束。您不需要提供购买对话框、交易超时逻辑或“感谢”对话框。Amazon Appstore 提供了交易的所有这些部分。

在用户发起购买后,Amazon Appstore 客户端应用会显示亚马逊品牌的用户界面来完成交易。此应用为购买工作流程的所有方面显示用户界面:

  • 显示可购买项目的逻辑。
  • 执行购买。
  • 处理任何先决条件或错误情况。

如果购买未成功,则 Amazon Appstore 会向客户显示相关消息;您的应用不应向客户显示消息。例如,如果客户的存档中没有有效的信用卡,则 Amazon Appstore 会将客户重定向到一个页面,他们可以在其中更新其付款信息。不要向客户提供有关购买流程的确认或其他插播对话框。

下表总结了在实施 IAP 时您的应用和 Amazon Appstore 之间的责任分离:

责任
您的应用
亚马逊
向客户提供应用内项目的目录以供购买。
解锁可购买功能。
管理购买流程。
执行付款处理。
处理与亚马逊平台的安全通信,包括付款安全性。
验证权利并验证购买收据。
管理自动续订订阅的账单。
管理撤销权利的账单。
先验证订阅和权利的收据,然后再向用户提供内容。
下载远程交付的内容。
显示并使用已下载的数字产品。
跟踪客户购买和消费品清单。
注意: 亚马逊不对购买的应用内项目提供退款。

IAP 组件

如果您首次使用 IAP,请熟悉以下组件,在实施此功能时会涉及所有这些组件:

名称 描述 文档(Android 应用) 文档(Web 应用)
IAP SDK您的应用使用 IAP SDK 执行和履行应用内购买。IAP 入门 适用于 Web 应用的 IAP API 概述
IAP SDK 参考 应用内购买 API 2.0 参考 Web 应用 API 参考
Amazon Appstore 处理付款处理、警报、履行和其他后端功能。 不适用 不适用
App Tester 在本地测试您的应用,然后再发布到 Amazon Appstore。 测试 IAP 测试 IAP
Receipt Verification Service (RVS) 验证交易收据的有效性。RVS 支持沙盒环境和生产环境。 适用于 IAP 应用的 RVS 适用于 IAP 应用的 RVS
Live App Testing 服务 在生产环境中通过一组选定用户对您的应用进行 Beta 测试。 Live App Testing Live App Testing

购买类型

在您规划 IAP 实施时,将需要定义您的应用将向其用户提供什么类型的项目。您还将需要确定您希望如何提供这些购买的项目。本部分简要介绍 IAP 支持的购买类型。

有关什么可以是和什么不能是可购买项目的信息,请参阅分销协议

可购买项目的类型

IAP 包括三种不同类别的可购买项目:

  • 消费品​: 先进行购买,然后在应用中使用,如额外生命、额外移动或游戏中的货币。可多次购买。
  • 权利​: 一次性购买,用于允许访问应用或游戏中的功能或内容。
  • 订阅: 允许访问一组高级内容或功能有限的一段时间。

内容类型和交付流程

IAP 支持两种基本交付流: 即时可用内容和可交付内容:

  • 立即可用的内容
  • 可交付内容

立即可用的内容

在购买后解锁立即可用的内容或以其他方式提供给客户。在此模式下,您的应用已具有使客户在购买后立即使用可购买项目所需的一切。使用此模式,您可以使用所有三种类型的可购买项目。

您的应用应包含每个可购买项目的唯一标识符 (SKU),能够向客户提供目录,并能够在应用中提供在成功交易后解锁可购买项目的逻辑。

步骤 组件 任务
步骤 1应用应用启动应用内购买流程。应用调用 IAP API 来管理购买。
步骤 2IAP APIIAP API 与用户交互以完成购买。IAP API 向应用返回购买收据。
步骤 3应用应用使用收据来解锁购买的本地内容。

可交付内容

可交付内容允许您向客户提供新内容。在此模式下,您的应用将从服务器下载新内容并提供给客户。可交付项目通常是订阅项目。

您的应用应包含每个可购买项目的唯一标识符 (SKU),能够向客户提供目录,并能够在应用中提供在成功交易后下载、保存并提供已下载内容的逻辑。

步骤 组件 任务
步骤 1应用应用启动应用内购买流程。应用调用 IAP API 来管理购买。
步骤 2IAP APIIAP API 与用户交互以完成购买。IAP API 向应用返回购买收据。
步骤 3 应用 应用向应用服务器发送收据,以启动内容交付。
步骤 4 应用服务器 应用服务器将向用户提供内容。

SKU

SKU(技术上表示库存单位)是每个不同的可购买项目的唯一标识符。它对您(具体来说是您在开发者门户上注册的开发者账户)来说是唯一的,是一个(最多)150 个字符长的任意结构的字符串,可包含字符 a-z、A-Z、0-9、下划线、句点和短横线,并且区分大小写。可购买项目和 SKU 具有一对一映射。您的应用将通过 PurchasingManager 帮助程序类将 SKU 值传递给客户端。通过 SKU,客户端知道客户试图购买什么,并将相应地管理购买流程。

您需要确保您定义的每个可购买项目都具有唯一的 SKU。SKU 在您的开发者账户中是唯一的。当您为多个应用提交 SKU 时,您需要确保没有重叠。

必须先通过开发者门户对 SKU 进行配置,然后才能使用它。有关如何配置 SKU 的信息,请参阅常见问题解答的开发者门户部分。

应用提交过程

在将您的集成了 IAP 的应用提交到 Appstore 之前,您需要先创建并提交该应用的应用内项目。Amazon Appstore 直到应用和应用内项目都已提交后才会测试您的应用。

使用开发者控制台来创建和管理应用的可购买项目目录。请参阅提交单个应用内项目

您还可以同时创建或修改多个应用内项目。请参阅用于 IAP 批量提交的 CSV 文件

如果您在提交应用后决定添加或编辑可购买项目,则将需要将新的/更改的项目和应用本身重新提交到 Amazon Appstore。