安装并配置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
以下是您在设备上进行设置的方法:
- 要安装和启动IAP App Tester,请按照有关如何在Vega虚拟设备或Fire TV Stick上运行应用的说明进行操作。
以下为快速参考。
在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>
<程序包ID>为com.amazonappstore.iap.tester。在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文件。
- 在Web浏览器中,转到您的应用在应用和游戏开发者门户上的页面。
- 将IAP可购买商品添加到应用中(如果您尚未这样做)。
- 单击链接来下载JSON数据文件。
- 将已下载的文件命名为“amazon.sdktester.json”。
-
将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日

