en zh

测试指南

1. 概述

Samsung 应用程序内购买 (IAP) 支持对您的应用程序内项目提供、购买和付款功能进行应用程序 IAP 集成和应用程序内项目开发测试,然后再提交您的应用程序和应用程序内项目(消耗性、非消耗性和订阅项目)以供在 Galaxy Store 中进行验证测试和正常发布。

对应用程序内项目提供(当应用程序获取当前项目价格和详细信息并向应用程序用户显示时)进行 IAP 测试与正常发布相同。对应用程序内项目购买和付款进行 IAP 测试与正常发布相同,不同的是订阅项目测试有所变化,并且部分测试者可以免费获得项目。

2. IAP 测试环境

确定 IAP 测试和对项目进行测试要使用的购买和付款交易的类型。

在您的应用程序代码中,请按如下所示设置 IAP 操作模式。
在卖家门户中:注册您的应用程序和应用程序内项目、设置封闭式 Beta 版测试(如果已使用),并按如下所示设置应用程序状态。

IAP 测试

交易

IAP 操作模式

应用程序状态

始终成功的侧面加载

免费

OPERATION_MODE_TEST

正在注册

始终失败的侧面加载

免费

OPERATION_MODE_TEST_FAILURE

正在注册

生产封闭式 Beta 版

免费收费
(取决于测试者的类型)

OPERATION_MODE_PRODUCTION

已部署 Beta 版

IAP 测试交易类型

IAP 测试支持项目购买的“免费”和“收费”交易。

(1) 免费交易

  • 项目付款不向付款网关(PG 卡公司或付款机构)报告。对于成功的交易,将向测试者发送购买电子邮件和金额。
  • 在项目购买 UI 弹出窗口中,显示了“Sandbox”图标。


  • 详细信息依赖于 IAP 测试环境和测试者的类型:
IAP 操作模式

测试者类型

详细信息

OPERATION_MODE_TEST

所有类型

  • 测试者始终获得已购买的项目。
    - IAP 始终报告购买成功。
  • 对于消耗性项目和非消耗性项目,将会每 10 分钟初始化一次购买记录,以便允许再次购买。
  • 对于订阅项目,将会每 10 分钟自动续订一次订阅周期,并且在 12 次续订后将自动取消订阅。
OPERATION_MODE_TEST_FAILURE

所有类型

  • 测试者始终无法获得已购买的项目。
    - IAP 始终报告购买失败。
OPERATION_MODE_PRODUCTION

已许可测试者

  • 对于成功的购买,测试者将获得项目。
    - IAP 始终报告购买成功或购买失败。

(2) 收费交易

  • 对于成功的交易,项目付款将向付款网关(PG 卡公司或付款机构)报告并由网关授权,IAP 将报告购买金额。
  • 在项目购买 UI 弹出窗口中,未显示“Sandbox”图标。


  • 仅对于 OPERATION_MODE_PRODUCTION Beta 版测试和非许可测试者才会发生:
    对于成功的购买,测试者将获得项目并对其收费,IAP 报告购买成功。

3. IAP 测试

为您的应用程序、应用程序内项目和 Samsung IAP 创建测试时,IAP 测试是测试设置以及启动和验证 IAP 功能的指导原则。您可以通过一个或多个 IAP 测试来测试您的应用程序和应用程序内项目。

3.1 准备

对于所有 IAP 测试,测试者、应用程序和应用程序内项目均需准备就绪:

  1. 确保每个测试者都有可用于付款的有效信用卡。
    不会针对任何项目购买向侧面加载测试者和已许可测试者的信用卡计费。
    对于所有项目购买,都不会向非许可测试者的信用卡计费。

  2. 在您的应用程序代码中:

a. 为选定的 IAP 测试设置 IAP 操作模式。
mIapHelper.setOperationMode(HelperDefine.OperationMode.[IAP operating mode for the selected test])
b. 设置在项目购买期间是否显示“付款完成”或“付款失败”消息
IapHelper.startPayment class parameter _showSuccessDialog is true or false

  1. 生成应用程序 APK。
    有关详细信息,请参阅《编程指南》。

  2. 在 Samsung Galaxy Store 卖家门户中:

a. 注册应用程序和应用程序内项目。

b. 为选定的 IAP 测试设置应用程序状态。

3.2 测试类型

(1) 始终成功的侧面加载测试

  • 目的和用途:
    • 测试所有项目的提供、购买和付款。
    • 测试处于 IAP 测试期限内的订阅项目。
    • 通常用于应用程序、应用程序内项目和 IAP 集成开发期间。
  1. 准备要进行测试的应用程序和应用程序内项目

    • IAP 操作模式设置为 OPERATION_MODE_TEST
  2. 通过独立方法(例如侧面加载)在测试设备上安装应用程序。

  3. 测试项目提供和购买

a. 测试者始终获得已购买的项目且不收费。

b. IAP 将所有购买报告为成功并报告购买金额。

  1. 测试订阅项目

(2) 始终失败的侧面加载测试

  • 目的和用途:
    • 测试所有项目的提供和失败的购买及付款。
    • 通常用于应用程序、应用程序内项目和 IAP 集成开发期间。
      1.准备要进行测试的应用程序和应用程序内项目。
    • IAP 操作模式设置为 OPERATION_MODE_TEST_FAILURE
      2.通过独立方法(例如侧面加载)在测试设备上安装应用程序。
      3.测试项目提供和购买
      a. 测试者始终未获得项目且不收费。
      b. IAP 将所有项目购买和付款报告为失败。

(3) 生产封闭式 Beta 版测试

  • 目的和用途:
    • 所有 Beta 版测试者可以测试所有项目(消耗性、非消耗性和订阅项目)的提供以及成功和失败的购买及付款。
    • 非许可测试者测试处于已注册项目期限内的订阅项目。
    • 已许可测试者测试处于 IAP 测试期限内的订阅项目。
    • 通常在正常发布前的最后开发阶段,用于测试应用程序及其项目的初始版本和更新版本。
  1. 如果应用程序先前是通过侧面加载方式加载到测试设备上的,请卸载应用程序。

  2. 准备要进行测试的应用程序和应用程序内项目
    IAP 操作模式设置为 OPERATION_MODE_PRODUCTION。

  3. 在卖家门户中:
    a. 注册应用程序及其项目。
    有关详细信息,请参阅《应用程序注册指南》和《应用程序内购买指南》。

    b. 设置封闭式 Beta 版测试:
    在卖家门户应用程序注册的“二进制文件”选项卡中,注册所有测试者(包括非许可测试者和已许可测试者)和封闭式 Beta 版测试的反馈渠道。

在您的卖家门户配置文件中,注册已许可测试者。

c. 单击“提交 Beta 版测试”,提交应用程序及其项目以供进行 Beta 版发布。
有关更多详细信息,请参阅《应用程序注册指南》。

  1. 在每个 Beta 版测试者的设备上,从 Beta 版测试 URL 下载 Beta 版应用程序。

  2. 测试项目提供和购买:
    通常,一些测试者为非许可测试者,一些测试者为已许可测试者。

    • 非许可测试者可以获得已购买的项目且将收费。
      已注册项目期限适用于订阅项目。
    • 已许可测试者可以获得已购买的项目且不收费。
      IAP 测试期限适用于订阅项目。
    • IAP 将报告交易成功或交易失败,对于成功的交易,还将报告实际项目购买金额。
  3. 测试已购买的订阅项目

3.3 测试项目提供和购买

可以对每个已测试的应用程序内项目执行以下步骤:

  1. 测试应用程序内项目提供:
    a. 在应用程序中,启动对每个项目显示当前价格和详细信息。
    b. 验证项目信息是否与卖家门户中注册的价格和详细信息一致。

  2. 测试应用程序内项目购买:
    a. 在应用程序中,启动对项目的购买。
    b. 对于已许可测试者,请单击“确定”。

c. 对于始终成功的侧面加载和始终失败的侧面加载测试者,请单击“继续”。

d. 在购买弹出窗口中:
免费交易 收费交易

(1) 验证项目详细信息是否与卖家门户中注册的信息一致。

(2) 选择付款方式并验证付款信息是否正确。
(3) 选择“积分和优惠券”并验证所显示的信息是否正确。
(4) 单击**[“项目购买”按钮]。**

e. 验证以下信息:

测试

说明

始终成功的侧面加载测试

  • 将显示“付款完成”消息(如果已配置)。
    - 购买的项目将添加到您的帐户中。
    - 将向您发送“项目已购买”电子邮件。
始终失败的侧面加载测试

  • 将显示“付款失败”消息(如果已配置)。
    - 购买的项目将不会添加到您的帐户中。
生产封闭式 Beta 版测试

对于成功的购买:
- 将显示“付款完成”消息(如果已配置)。
- 购买的项目将添加到您的帐户中。
- 将向您发送“项目已购买”电子邮件。
- 如果您是非许可测试者,将向您收费。
- 如果您是许可测试者,将不向您收费。
对于失败的购买:
- 将显示“付款失败”消息(如果已配置)。
- 购买的项目将不会添加到您的帐户中。
- 将不向您收费。

3.4 测试订阅项目

对于自动定期订阅 (ARS) 项目,您可以测试其提供、购买、免费试用、低层和常规层定价、自动付款、手动订阅取消和再次购买。

  • 根据 IAP 测试环境,免费试用期和订阅期限在下列情况之一后结束:

已注册项目期限

  • 免费试用期和订阅期限将按订阅项目的卖家门户注册中指定的时间结束,可以是几周、几个月或几年。
  • 应用于非许可测试者的生产封闭式 Beta 版测试期间。

IAP 测试期限

  • 免费试用期和订阅期限每隔 10 分钟结束一次(分别为 hh:10、hh:20、hh:30、…)。购买或再次购买后的第一个期限在接下来的 10 分钟时间后结束。例如,如果免费试用项目的第一次购买时间为 11:08,则免费试用结束的时间为 11:10。
  • 应用于所有测试者的始终成功侧面加载测试期间,以及已许可测试者的生产封闭式 Beta 版测试期间。

测试订阅项目

  1. 设置测试环境:
将向非许可测试者收取购买费用,且期限按注册的时间结束。
  1. 购买订阅项目。
要再次测试免费试用或低层定价,请执行下列操作之一: - 重新注册新项目(例如,采用不同名称),并让同一测试者购买项目。 - 让另一测试者购买项目。
  1. 在初始购买后测试项目。
    根据下面所适用情况对应的示意图,验证是否发生下列操作:
  • 在购买电子邮件中向您发送免费或已注册购买的价格,以及其他购买详细信息。
  • 第一次自动付款电子邮件在下一个 10 分钟后发送,并按第一次自动付款价格收费(已注册低层或常规层价格)。
  • 每隔 10 分钟发送另一封自动付款电子邮件,并按自动付款价格收费(已注册低层或常规层价格)。



  1. 测试项目再次购买:
    a. 再次购买订阅项目。
    b. 根据下面所有项目类型对应的示意图,验证是否发生下列操作:
    • 购买后很快向您发送包含常规层价格的购买电子邮件。
    • 在购买后的 10 分钟发送第一封自动付款电子邮件。
    • 每隔 10 分钟发送的所有自动付款电子邮件中包含常规层价格。



  1. 测试手动订阅取消:
    a. 在 Galaxy Store 中,自动取消前随时单击“我的页面”>“接收内容”>“项目”选项卡>“[选择已购买的项目]”>“取消订阅”。
    b. 验证是否向您发送了取消电子邮件。

示例订阅项目测试

在这两个示例中,一个测试者设置了侧面加载测试,或者一个注册的已许可测试者设置了生产封闭式 Beta 版测试。免费试用期和订阅期限处于 IAP 测试期限内,并且免费试用和低层定价在再次购买项目后未生效。

购买、免费试用、手动取消和再次购买非分层订阅项目
  • 测试订阅应用程序内项目具有 7 天的免费试用期,每月常规订阅价格为 $4.99。时间(hh:mm 本地时间)适用于列出的操作和事件。
购买、免费试用、手动取消、再次购买和自动取消分层订阅
  • 测试订阅应用程序内项目具有 7 天的免费试用期,3 个月的低层订阅价格每个月为 $2.99,每月常规订阅价格为 $4.99。

时间(hh:mm 本地时间)适用于列出的事件。


4. IAP 测试后

完成所有 IAP 测试之后,且在提交您的应用程序及其应用程序内项目以供验证测试之前,必须为正常发布做好准备。

准备正常发布

  1. 对于在 IAP 测试期间购买的订阅项目,请确保其订阅已取消。
  2. 从测试者移动设备中删除已测试的应用程序。
  3. 在要提交以供验证测试的应用程序代码中,请确保 IAP 操作模式为 OPERATION_MODE_PRODUCTION。
  4. 在卖家门户中:

a. 删除您的配置文件中注册的所有已许可测试者。

b. 如果 IAP 测试之后更改了应用程序或其项目,请使用应用程序及其项目的生产版本更新应用程序注册,并根据需要更改注册信息。

c. 提交应用程序及其项目以供 Samsung 进行验证测试和在 Galaxy Store 中正常发布。
有关详细信息,请参阅《应用程序注册指南》和《应用程序内购买指南》。