亚马逊应用商店计费兼容性订阅
使用此页面可帮助您使用亚马逊应用商店计费兼容性SDK在应用中设置订阅。
在开发者控制台中添加订阅
要在应用中添加订阅,首先必须在开发者控制台中创建订阅计划。有关如何设置订阅的详细说明,请参阅创建并提交单个IAP商品。
设置订阅时,请提供以下信息。
数据 | 描述 |
---|---|
订阅名称 | 包含订阅标题的字符串。 |
订阅SKU | 成为订阅商品ID的唯一字符串。此SKU也称为期限SKU的父SKU。 |
描述及图像 | 订阅的显示标题、描述和图像。 |
订阅期限 | 为您的客户提供的订阅期。期限始终在订阅SKU下定义。每个期限都有唯一的SKU和唯一的期间。 |
订阅期限数据 | |
订阅期限(也称为期间或期限) | 订阅期限从购买日期开始。有效值为Weekly(每周)、BiWeekly(每两周)、Monthly(每月)、BiMonthly(每两个月)、Quarterly(每季度)、SemiAnnually(即每六个月)和Annually(每十二个月)。 |
SKU(也称为期限 SKU) | 唯一标识此订阅期限的期限SKU。 |
免费试用 | (可选)订阅的免费试用期。有效值为否(即没有免费试用)、7 7天、14天、1个月、2个月和3个月。 |
价格 | (可选)您的订阅期限的价格。设置基本价格,让控制台自动计算其他市场的价格,或手动设置所有市场的价格。 |
订阅计划示例
此示例为具有免费选项和高级选项的应用提供数据。免费选项提供基本功能,高级选项提供专属特权。要访问高级功能,客户必须具备有效的订阅。订阅有两种期限。
- 每月1.99美元的月度计划。
- 每年9.99美元的年度计划。该计划还提供为期七天的免费试用。
要在开发者控制台中对此产品进行建模,您需要创建一个包含以下详细信息的订阅计划:
- 订阅SKU:“com.example.sampleapp.premium”
此SKU的名称表示它是高级订阅的SKU。 - 订阅名称: “高级版订阅”
- 描述: “此为高级版订阅。购买此版本可访问独家特色内容。”
- 订阅期限: 此订阅有两个期限。一个是每月,另一个是每年。
- 每月期限:
- 订阅期限: 每月
- SKU: "com.example.sampleapp.premium.monthly"
- 免费试用: 否
- 价格: 1.99美元
- 每年期限:
- 订阅期限: 每年
- SKU:“com.example.sampleapp.premium.yarly”
- 免费试用: 7天
- 价格: 9.99美元
- 每月期限:
注意
- 每年期限有七天的免费试用期。
- 每月期限没有免费试用。
- 月度期限和年度期限的SKU彼此不同,并且与订阅SKU不同。
在应用中提供订阅详情
在开发者控制台中设置订阅后,必须在应用中提供订阅详细信息。为此,请将您在开发者控制台中创建的订阅IAP下载为JSON文件,并将该文件添加到应用的资产文件夹中。要下载文件:
- 导航到您的应用的应用程序内商品选项卡。
- 选择导出多个IAP > JSON。
- 单击确定进行确认。
- 等待片刻,直至文件生成。准备好后,会显示一个下载文件的选项。
- 下载JSON文件。
在下载文件之后,将其复制粘贴到应用程序的资产文件夹中。亚马逊应用商店使用此文件在父订阅与其期限SKU之间建立关联。
以下是一个基于订阅计划的示例JSON,该订阅计划的父SKU为“com.example.sampleapp.premium”,期限SKU为“com.example.sampleapp.premium.monthly”和“com.example.sampleapp.premium.yearly”。
{
"com.example.sampleapp.premium.monthly": {
"smallIconUrl": "http://",
"title": "高级版订阅",
"itemType": "SUBSCRIPTION",
"price": 0.0,
"description": "此为高级版订阅。购买此版本可访问独家特色内容。",
"languageTitleMap": {
"US": "高级版订阅"
},
"languageDescriptionMap": {
"US": "购买此订阅即可在应用中获得Infinite Gas"
},
"currencyPriceMap": {
"US": 0.0
},
"subscriptionParent": "com.example.sampleapp.premium",
"term": "Monthly"
},
"com.example.sampleapp.premium.yearly": {
"smallIconUrl": "http://",
"title": "高级版订阅",
"itemType": "SUBSCRIPTION",
"price": 0.0,
"description": "此为高级版订阅。购买此版本可访问独家特色内容。",
"languageTitleMap": {
"US": "Infinite Gas订阅"
},
"languageDescriptionMap": {
"US": "购买此订阅即可在应用中获得Infinite Gas"
},
"currencyPriceMap": {
"US": 0.0
},
"subscriptionParent": "com.example.sampleapp.premium",
"term": "Annually"
}
}
移植订阅计划
2022年5月,Google更新了其处理订阅的方式。有关详细信息,请参阅“Play Console帮助”文档中的Play Console中最近对订阅的更改。如果您使用传统订阅,您的应用将使用2022年5月更改之前的API和购买流程。在此流程中,您的应用使用querySkuDetailsAsync()
方法获取SKU详细信息,然后调用launchBillingFlow()
方法,该方法使用SKU详细信息。在此订阅模式下,订阅计划只有一个期限。
如果您的应用使用2022年5月之后提供的API和购买流程,它将使用queryProductDetailsAsync()
获取产品详情,然后使用launchBillingFlow()
方法,该方法使用产品详细信息和优惠令牌。在此订阅模式下,订阅计划可以有多个期限。有关更多详细信息,请参阅Android开发者文档中的向后兼容Play结算库升级。
亚马逊应用商店计费兼容性API为您提供了使用任一流程的选项,因为它包括querySkuDetailsAsync()
方法和queryProductDetailsAsync()
方法。
相关主题
- 实现Google Play Billing接口
- 亚马逊应用商店计费兼容性SDK - 概述及集成指南
- 亚马逊应用商店计费兼容性SDK故障排除
- 亚马逊应用商店计费兼容性SDK最佳实践
- 亚马逊应用商店计费兼容性API参考
Last updated: 2024年10月14日