开发者控制台

应用商店计算兼容性订阅

亚马逊应用商店计费兼容性订阅

使用此页面可帮助您使用亚马逊应用商店计费兼容性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。
  • 订阅名称: “高级版订阅”
  • 描述: “此为高级版订阅。购买此版本可访问独家特色内容。”
  • 订阅期限: 此订阅有两个期限。一个是每月,另一个是每年。
    • 每月期限:
      1. 订阅期限: 每月
      2. SKU: "com.example.sampleapp.premium.monthly"
      3. 免费试用:​ 否
      4. 价格: 1.99美元
    • 每年期限:
      1. 订阅期限: 每年
      2. SKU:“com.example.sampleapp.premium.yarly”
      3. 免费试用:​ 7天
      4. 价格: 9.99美元

注意

  • 每年期限有七天的免费试用期。
  • 每月期限没有免费试用。
  • 月度期限和年度期限的SKU彼此不同,并且与订阅SKU不同。

在应用中提供订阅详情

在开发者控制台中设置订阅后,必须在应用中提供订阅详细信息。为此,请将您在开发者控制台中创建的订阅IAP下载为JSON文件,并将该文件添加到应用的资产文件夹中。要下载文件:

  1. 导航到您的应用的应用程序内商品选项卡。
  2. 选择导出多个IAP > JSON
  3. 单击确定进行确认。
  4. 等待片刻,直至文件生成。准备好后,会显示一个下载文件的选项。
  5. 下载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()方法。


Last updated: 2023年10月27日