as

Settings
Sign out
Notifications
Alexa
亚马逊应用商店
AWS
文档
Support
Contact Us
My Cases
新手入门
设计和开发
应用发布
参考
支持

安装并配置App Tester

安装并配置App Tester

您可以在提交并发布应用前,使用App Tester在沙盒模式下对应用的应用内购买 (IAP) 功能进行单元测试。

您可以将App Tester下载到与您的应用相同的设备上,也可以使用Vega虚拟设备 (VVD)。App Tester模拟生产环境。

您可以在应用上运行与IAP相关的测试案例,App Tester将生成您使用JSON文件配置的API响应。

App Tester先决条件

您的开发和测试环境必须满足以下先决条件,才能使用App Tester运行测试案例:

  • 您的开发环境允许通过VDA和logcat进行日志记录。以下是有关如何使用VDA进行连接以及VDA命令的更多详细信息。
  • 您的应用实现了Vega IAP API方法调用。
  • 您的设备上没有SDK Tester。SDK Tester与App Tester或Vega IAP SDK不兼容。
  • 将此信息添加到manifest.toml文件中。

已复制到剪贴板。

[wants]
# ... 其他的wants

[[wants.service]]
id = "com.amazon.iap.tester.service" # 对于测试工具这是必需项(沙盒模式)

[[wants.module]]
id = "/com.amazonappstore.iap.tester@IIAPTesterUI"

[needs]

[[needs.module]]
id = "/com.amazon.kepler.appstore.iap.purchase.core@IAppstoreIAPPurchaseCoreService"

# ...

建议在亚马逊应用商店中为您的应用创建一个或多个可购买商品。这样,您就可以轻松创建所需的JSON文件。

下载App Tester

App Tester是一款免费的应用,可以在以下位置下载:

适用于React Native 0.72版本

以下下载适用于当前发行版本。

在您的设备上安装App Tester

以下是您在设备上进行设置的方法:

以下为快速参考。

在Fire TV设备上安装

推送.vpkg文件

已复制到剪贴板。

kepler exec vda push <.vpkg文件路径>/<appname.vpkg> /tmp

访问您的Fire TV

已复制到剪贴板。

kepler exec vda shell

在设备上安装App Tester

已复制到剪贴板。

vpm install /tmp/<应用名称.vpkg>

访问您的Fire TV

已复制到剪贴板。

kepler exec vda shell

在设备上卸载App Tester

已复制到剪贴板。

vpm uninstall <程序包ID>

在Vega虚拟设备上安装

启动VVD

已复制到剪贴板。

kepler virtual-device start

在VVD上安装应用

已复制到剪贴板。

kepler run-kepler  <.vpkg文件路径>/<appname.vpkg> com.amazonappstore.iap.tester.ui -d VirtualDevice

访问VVD

已复制到剪贴板。

kepler exec vda shell

在设备上启动App Tester

已复制到剪贴板。

vlcm launch-app pkg://com.amazonappstore.iap.tester.ui

终止设备上的App Tester

已复制到剪贴板。

vlcm terminate-app -f -p com.amazonappstore.iap.tester

您可以在我们的程序包和生命周期管理器文档中了解有关vpm和vlcm的更多信息。

要在VVD上安装和运行您的应用,请参阅安装和配置App Tester

创建JSON数据文件

App Tester使用JavaScript对象表示法(JSON)文件中存储的数据响应API调用。该文件包含IAP商品的购买数据。

您可以通过应用和游戏开发者门户自动创建JSON文件。

  1. 在Web浏览器中,转到您的应用在应用和游戏开发者门户上的页面。
  2. 将IAP可购买商品添加到应用中(如果您尚未这样做)。
  3. 单击链接来下载JSON数据文件。
  4. 将已下载的文件命名为“amazon.sdktester.json”。
  5. 将SKU JSON文件推送到设备中。

    1.在设备上创建此目录

    已复制到剪贴板。

    kepler exec vda shell mkdir /tmp/scratch/com.amazonappstore.iap.tester/
    

    2.推送到创建的目录

    已复制到剪贴板。

    kepler exec vda push <amazon.sdktester.json文件> /tmp/
    

    已复制到剪贴板。

    kepler exec vda shell cp /tmp/<amazon.sdktester.json> /tmp/scratch/com.amazonappstore.iap.tester/
    

为VVD创建JSON数据文件

1.在设备上创建此目录

已复制到剪贴板。

kepler exec vda shell mkdir /tmp/scratch/com.amazonappstore.iap.tester/

2.推送到创建的目录

已复制到剪贴板。

kepler device copy-to -s <amazon.sdktester.json的路径> --destination /tmp/scratch/com.amazonappstore.iap.tester

如果打开已下载的JSON文件,请注意一般文件格式如下所示。

已复制到剪贴板。

 {
  Item_ID_1:{Item_1_Description},
  Item_ID_2:{Item_2_Description},
  .
  .
  .
  Item_ID_n:{Item_n_Description}
  }

实际的商品描述定义因商品类型而异。JSON文件中商品的顺序并不重要。请注意描述定义之间的逗号“,”。

文件格式和示例: IAP消费品和权利商品

消费品和权利IAP商品描述具有相同的格式。itemType属性指示商品是ENTITLED还是CONSUMABLE。每个可购买项目均与其唯一的标识符相关联,这个标识符称为SKU。

已复制到剪贴板。

"your_item_SKU":{
  "itemType": "ENTITLED|CONSUMABLE",
  "price": price,
  "title": "item_title",
  "description": "item_description",
  "smallIconUrl": "full_url_for_small_icon"
  }

下面的示例显示了消费品商品和权利商品:

已复制到剪贴板。

{
"com.amazon.sample.iap.consumables.orange":{
  "itemType": "CONSUMABLE",
  "price": 10.00,
  "title": "橙子",
  "description": "一个橙子",
  "smallIconUrl": "http://www.amazon.com/orange.jpg"
  },

"com.amazon.sample.iap.entitlements.level2":{
  "itemType": "ENTITLED",
  "price": 10.00,
  "title": "关卡2",
  "description": "玩关卡2的权利"
  }
}

文件格式和示例: IAP订阅商品

订阅商品不同于您可购买的其他类型商品。每个可购买商品均与唯一标识它的、称为SKU的标识符相关联。在购买订阅时,涉及两个SKU。一个是“父SKU”,描述订阅针对什么(如杂志标题)。另一个SKU是“条款SKU”,描述订阅的条款(价格、时长)。条款SKU是客户实际购买的内容。

由于条款SKU是可购买商品,JSON IAP商品描述针对该商品。不过,描述还必须包含对父SKU的引用。因此,订阅商品类型包括额外的属性:subscriptionParent

已复制到剪贴板。

"your_terms_SKU":{
  "itemType": "SUBSCRIPTION",
  "price": price,
  "title": item_title,
  "description": item_description,
  "smallIconUrl": "http://www.amazon.com/kindle.jpg",
  "subscriptionParent": "your_parent_SKU"
  }

以下是订阅商品描述的示例(注意订阅父SKU)。

已复制到剪贴板。

{
  "com.amazon.sample.iap.subscription.mymagazine.silver": {
      "description": "《我的杂志》白银会员月度订阅",
      "title": "白银会员月度订阅",
      "itemType": "SUBSCRIPTION",
      "price": 50.0,
      "subscriptionBase": "com.amazon.subs.base",
      "subscriptionParent": "com.amazon.subs.silver",
      "term": "Monthly",
      "freeTrialPeriod": "Monthly",
  },
  "com.amazon.sample.iap.subscription.mymagazine.gold": {
      "description": "《我的杂志》黄金会员月度订阅",
      "title": "黄金会员月度订阅",
      "itemType": "SUBSCRIPTION",
      "price": 80.0,
      "term": "Monthly",
      "subscriptionBase": "com.amazon.subs.base",
      "subscriptionParent": "com.amazon.subs.gold"
  }
}

验证您的IAP商品

您可以轻松地查看JSON文件的内容。从App Tester主菜单中,点击IAP Items in JSON File(JSON文件中的IAP商品)选项以显示JSON文件中商品数据的人类可读列表。

下一步骤: 使用App Tester


Last updated: 2025年9月30日