文章

在 App 中实现推介促销优惠

向符合条件的用户提供自动续期订阅推介促销优惠。

概览

包含自动续期订阅的 App 可以向符合条件的用户提供推介促销折扣价,包括免费试用。您可以针对指定的产品或同一订阅组中的任意产品,向以前未享受过推介促销优惠的客户提供此优惠。

首先在 App Store Connect 中设置推介促销优惠。然后,在您的 app 中,确定用户是不是符合享受推介促销优惠的条件。当 app 向 App Store 查询可用产品列表时,如果用户符合享受推介促销价的条件,系统会显示推介促销价。

设置推介促销优惠

在 app 中显示推介促销优惠之前,您必须先在 App Store Connect 中配置这些优惠。有关更多信息,请参阅“为自动续期订阅设置推介促销优惠”。

您可以从三种推介促销优惠中选择一种,这些优惠类型在付款方式上有所不同。推介促销期结束后,所有订阅都会以正常价格续订。具体的优惠类型为“随用随付”、“提前支付”和“免费试用”。

随用随付

SKProductDiscount.PaymentMode.payAsYouGo (英文) 值表示随用随付优惠类型。在这种推介促销优惠中,新的订阅用户在特定时限的每个结算周期享有推介促销价 (例如,前 3 个月享受每月 1.99 美元的订阅价格)。

随用随付时间线

提前支付

SKProductDiscount.PaymentMode.payUpFront (英文) 值表示提前支付优惠类型。在这种推介促销优惠中,新的订阅用户一次性支付特定时限的推介促销价 (例如,前 2 个月享受 1.99 美元的订阅价格)。

提前支付时间线

免费试用

SKProductDiscount.PaymentMode.freeTrial (英文) 值表示免费试用优惠类型。在这种推介促销优惠中,新的订阅用户在特定时限内可以免费访问相应内容。订阅会立即生效,但在免费试用期结束前,不会向订阅用户收取费用。

免费试用时间线

确定资格

要确定用户是不是符合享有推介促销优惠的条件,请检查他们的收据:

  1. 按照“通过 App Store 验证收据”中所述,验证收据。

  2. 检查收据上所有 App 内购买项目的交易的 is_trial_period (英文)is_in_intro_offer_period (英文) 的值。如果指定订阅的以上任一栏位为 true,那么对于这一订阅产品或同一订阅组中的任何其他产品,用户不符合享受推介促销优惠的条件。在 responseBody.Pending_renewal_info (英文) 数组中使用 subscription_group_identifier 确定订阅属于哪个订阅群组。

通常,您会从自己的服务器检查用户的资格。如有可能,应尽早确定资格,例如在 app 第一次启动时。

图中显示了推介促销优惠适用于新订阅用户,以及第一次收到推介促销优惠的已流失订阅用户。

根据收据显示,您会发现新用户和老用户符合享受包括免费试用在内的推介促销优惠的条件:

  • 新订阅用户始终符合条件。

  • 对于已流失的订阅用户,如果他们以前没有享受过该产品 (或同一订阅组中的任意产品) 的推介促销优惠,则在续订时符合条件。

现有订阅用户不符合享受同一订阅群组中的任意产品的推介促销优惠的条件。例如,如果用户要从其他产品进行订阅升级、降级或跨级,则他们不符合条件,无论他们过去有没有享受过推介促销优惠。

展示推介促销优惠

确定用户符合享受推介促销优惠的条件后,向 App Store 查询适用的产品,并向用户展示优惠:

  1. 利用 SKProductsRequest (英文) 类从 App Store 检索指定订阅产品列表的本地化信息。在 App Store Connect 中定义了适用折扣的产品始终包含 introductoryPrice (英文) 对象。

  2. 使用 introductoryPrice (英文) 对象中的属性来显示订阅的折扣价。根据推介促销优惠的类型 (由 SKProductDiscount.PaymentMode (英文) 表示),显示能相应地描述优惠活动的用户界面。

如需设计指导,请参阅“Human Interface Guidelines > App 内购买项目”(英文)

另请参阅

推介促销优惠