App Tester 用户指南


App Tester 用户指南

App Tester 工具使您能够在将应用发布到 Amazon Appstore 之前对亚马逊应用内购买 (IAP) 功能进行测试。在下载、安装并设置 App Tester 工具后,您可以开始在应用中测试购买功能。

如果您尚未为应用设置 App Tester,请参阅安装并配置 App Tester

选择 IAP API

当您首次启动 App Tester 应用时,登录页面会提示您选择 IAP API:

点击 In-App Purchasing API(应用内购买 API)提示以开始。 

App Tester 显示 IAP API 的导航选项列表:

  1. 用户账户设置: 为您的应用配置用户测试账户。
  2. API 响应设置: 为您的测试案例配置条件和响应。
  3. 通知设置: 启用或禁用添加到通知抽屉的通知。
  4. 管理交易​: 管理应用的有效 IAP 交易。
  5. JSON 文件中的 IAP 项目: 以易于人类读取的格式从 JSON 文件中查看您添加到 App Tester 中的数据。

管理用户

您可以登录和退出、更改用户以及相关联的市场。这些选项有助于在不同的市场中使用不同的用户测试不同的场景。

要访问用户管理屏幕,请从 App Tester 登录页面中选择 IAP API,然后点击 User Account Settings(用户账户设置)。

登录和退出

要使当前用户在已登录和已退出之间切换,请在 Status(状态)下点击 Logged in(已登录)或 Logged Out(已退出)选项。

更改当前用户

App Tester 提供了三种不同的测试用户账户。测试用户名为 Amazon User 1Amazon User 2Amazon User 3

要更改用户,请查看 Amazon User Id(Amazon 用户 ID)的下方,然后选择要用于测试的用户 ID。

为当前用户更改用户市场

App Tester 使您能够在不同的国际市场中测试您的应用。要更改与当前用户关联的市场,请查看 User Marketplace(用户市场)的下方并选择新市场。提供了以下市场:

  • US:​ 美国
  • GB:​ 英国
  • DE:​ 德国
  • ES:​ 西班牙
  • FR:​ 法国
  • IT:​ 意大利
  • JP:​ 日本

配置 API 响应设置

使用 API Response Settings(API 响应设置)选项卡来为 IAP API 的测试调用设置条件和响应:

在指定响应时,以下部分中的“Default”只是表示使用现有的默认设置。“Default”本身不是可用的设置。如果您明确选择了一个值(如 SUCCESSFUL 或 FAILED),则 App Tester 将返回所选值。例如,如果 JSON 文件包含所请求的 SKU,则 getProductData 将返回 SUCCESSFUL。如果在 User Account Settings(用户账户设置)中将用户设置为 Logged Out(已退出),则 GetUserData 将返回 FAILED。

下表显示了 IAP API 的可用响应。

API 名称 可用响应
GetProductData Default、SUCCESSFUL、FAILED
GetPurchaseUpdates Default、SUCCESSFUL、FAILED
GetUserData Default、SUCCESSFUL、FAILED
Purchase Default、SUCCESSFUL、FAILED、ALREADY_PURCHASED、INVALID_SKU

启用或禁用通知

使用 Notifications Settings(通知设置)选项卡可轻松启用或禁用添加到系统的通知抽屉的通知。

下图显示了 Notification Settings(通知设置)选项卡:

提供了以下通知设置:

  • Purchase Updates Notifications(购买更新通知): 默认情况下,在应用加载购买对话框但从未调用 getPurchaseUpdates() 时,亚马逊会发送通知。  在应用调用 getPurchaseUpdates() 一次后,亚马逊会停止发送此通知。使用 Purchase Updates Notifications(购买更新通知)设置可切换亚马逊是否发送此通知。

  • Notify Fulfillment Notifications(发送履行通知): 默认情况下,如果用户进行了购买但项目没有在 30 秒内履行,则亚马逊会发送通知。使用 Notify Fulfillment Notifications(发送履行通知)可启用或禁用此通知。

  • Reset Purchase Updates(重置购买更新): 重置指示是否已调用 getPurchaseUpdates() 的状态。

管理交易

使用 Manage Transactions(管理交易)选项卡可查看、取消和删除当前用户的购买交易。在测试权利和订阅时,取消和删除交易是非常有用的工具。此选项卡显示当前用户的所有交易。

Manage Transactions(管理交易)选项卡包含每个交易的以下信息:

  • RECEIPT(收据):​ 所购买产品的类型。IAP 的有效值为 CONSUMABLE、ENTITLEMENT 和 SUBSCRIPTION。
  • RECEIPT ID(收据 ID):​ 交易的唯一标识符。
  • SOLD BY(销售方):​ 销售项目的应用。
  • PURCHASED ON(购买日期):​ 购买项目的日期。
  • STATUS(状态):​ 交易状态。有效值为 PURCHASED 或 CANCELED。这些 App Tester 值分别映射到 IAP API 值 FULFILLED 和 UNAVAILABLE。

当应用调用 PurchasingService.notifyFulfillment(receiptId, FulfillmentResult.FULFILLED) 时,收据将显示在“Manage Transactions”(管理交易)部分中且状态为 FULFILLED(已履行)。

 从 Manage Transactions(管理交易)选项卡中,您可以执行以下任务:

  • 刷新当前用户的交易列表。
  • 删除当前用户的所有交易。
  • 取消单个交易。
  • 删除单个交易。

查看您的 JSON 文件中的 IAP 项目

要提供一种简单方法来查看您在安装并配置 App Tester 中配置的 JSON 文件中的 IAP 项目,请点击 IAP Items in JSON File(JSON 文件中的 IAP 项目)选项卡。如果您正确添加了有效的 JSON 文件,则 App Tester 将解析此文件的内容并将其显示在此选项卡下。

如果您尚未正确添加有效的 JSON 文件,则此选项卡将显示错误消息,或将指定 JSON 文件不存在。

模拟您的用户的体验

除了为 API 请求提供响应,App Tester 还可以显示购买流程对话框,就像发布的已上线应用一样。此功能的好处是,对话框可以帮助您评估用户对您的应用的购买过程的体验。

App Tester 为每个购买请求显示两个插播对话框。第一个对话框是显示购买价格和其他详细信息的详情页面对话框,如以下 IAP 示例所示:

第二个对话框是用户必须通过点击右上角的“X”按钮来手动关闭的“感谢”页面,如以下 IAP 示例所示:

日志记录

AppTester 使用 Logcat 工具来捕获有关您的应用的交易和其他 API 交互的详细信息。使用 Logcat 查看测试您的应用时生成的日志:

  1. 将具有您的应用和 AppTester 的 Android 设备连接到运行 Android Debug Bridge (ADB) 的计算机。
  2. 搜索标签“AmazonAppTester”以查看 AppTester 日志条目。

如果您使用的是 Eclipse DDMS 开发环境,则可以通过在 Logcat 选项卡中的筛选文本区域中输入 tag:AmazonAppTester 来筛选 App Tester 生成的日志条目。