【问题标题】:in-app purchase, multiple auto-renewing subscriptions having different durations应用内购买,具有不同持续时间的多个自动续订订阅
【发布时间】:2011-10-28 12:48:49
【问题描述】:

关于应用内购买自动续订订阅的问题:

我不清楚如何处理用户购买多个不同期限的订阅的情况。 Apple 似乎会识别用户是否已经购买了给定的 SKU(基于产品 ID)并防止重新购买(在这种情况下,我的应用程序会收到失败的交易事件),但如果我使用不同的方式提供相同的内容具有不同持续时间的产品 ID,则用户可能会购买两次或更多次。

即使我在用户订阅一次后隐藏了额外的购买选项,他们也有可能在备用设备上购买另一个订阅,并且该购买最终将/可能会恢复到已经订阅的另一台设备。

我是否应该通过交易 ID 和产品 ID 跟踪购买的订阅,并计算最终到期日期?这似乎很复杂。

【问题讨论】:

标签: iphone ios ipad in-app-purchase


【解决方案1】:

在我继续之前,请参阅the comments on this linked post,了解为什么使用自动续订订阅可能是个坏主意。

如果你以前听说过,请阻止我。
当您在 iTunes Connect 中选择 Auto-Renewable Subscriptions 时,您有机会为一个订阅 Family 添加具有不同产品 ID 的多个持续时间。 Apple 不允许用户在一个家庭中购买多个重叠的订阅期限。 (如果您在应用中使用多个家庭,请说明原因,以便我可以据此为您提供指导)。

事实上,Apple 不会让用户在一个家庭中叠加不同期限的订阅。

这是一个例子。
我(作为用户)下载假设的 Acme 应用程序并订阅 1 个月。如果我什么都不做,我的订阅将在订阅期结束时自动续订 1 个月。以此类推。

但相反,我返回并购买了 6 个月的订阅。 Apple 会告诉我(带有提醒)我的 6 个月订阅将在我当前的 1 个月订阅完成时开始,我是否愿意继续。如果我说是,Apple 会记录下来,但在我当前的 1 个月到期之前,他们不会向我收费。

现在,如果我再次返回并购买 1 年订阅,Apple 会再次发出警告,告诉我它将在我当前 1 个月订阅结束时开始。它不会添加到即将到来的 6 个月订阅。它将取代它。

总结
因此,用户只能拥有一个 Current 订阅和一个 Upcoming 订阅(在 family 内。这就是您在订阅中使用一系列产品持续时间的原因。如果您创建多个订阅系列,那么它们可以同时存在,而您会失去它保护。

如果作为开发人员,您想要手动延长、缩短、取消或堆叠订阅,您应该使用非续订订阅。如果您阅读我在顶部发布的链接,您会意识到 Apple 可能会强迫您这样做。

【讨论】:

  • 谢谢,安德鲁。几个月前,我确实弄清楚了这一切,并且确实让我的自动更新应用程序获得了批准。然而,由于“政策变化”(grr ...),我被要求切换到非续订订阅。
  • @TomSwift,你可能遇到的另一个转折点。我的应用再次被拒绝。尽管我按照他们的要求实现了Non-Renewable Subscriptions(NRS),但现在他们说他们不喜欢我使用 iCloud 在用户的多个设备上同步订阅。对于那些不知道的人,Apple 要求您在所有用户的设备上进行这种类型的 IAP 同步,但是 restore 不适用于 NRS,因此他们希望您实现 可选注册机制,以便用户可以登录以检索他们已经在其他地方购买的功能。
  • @Andrew Hey 你能解释一下我有两个家庭说黄金和白金并且用户想从家庭一跳到二的场景吗?这是否允许在应用商店或 iTunes 的管理订阅部分进行,还是只能从应用中完成?
  • @Nitin 这是个好问题。因为我一直在使用 NRS,所以我在 ARS 上已经离开了一段时间,但我会尽力回答。从您的应用程序中,用户可以在给定的订阅系列中选择新的持续时间。他们还可以在新家庭中开始新订阅。但他们无法从您的应用中取消任何订阅。而且我认为,如果您需要他们更换家庭,他们将需要取消第一个家庭,否则他们将开始为两个家庭收取费用。而且我认为没有办法告诉 Apple 一个家庭应该取代另一个家庭。
  • @Andrew 是的,你是对的。但我担心的是,它可以从应用程序外部更改订阅的持续时间,因为这些都列在 iTunes 和 App Store 应用程序的“管理订阅”部分下。同样,您订阅的产品以外的家庭产品是否也列在“管理订阅”下?如果是,那么显然用户可以从应用程序外部开始新订阅?如何处理?此外,您是否知道任何具有多个家庭的 ANR 的应用程序,可能是您的创作之一 :)
【解决方案2】:

【讨论】:

  • 由于各种原因我没有使用 mkstorekit。一方面,我对服务器端的要求与其简单的 php 脚本不同。我也不相信他们会处理我询问的这种情况。 (请有人证明我错了)
【解决方案3】:

请咨询 Appstore 订阅页面以获取最新信息https://developer.apple.com/app-store/subscriptions/。要点是使用group来定义多个订阅频道

创建订阅

用户一次只能在一个订阅组中购买一个订阅。如果用户希望能够购买多种订阅类型(例如,订阅流媒体应用中的多个频道),您可以将这些应用内购买放在不同的订阅组中。

升级、降级和跨级

当用户升级到任何期限的订阅,或跨级到具有相同期限的订阅时,服务级别更改将立即生效。当用户降级到任何期限的订阅,或跨级到具有不同期限的订阅时,更改将在下一个续订日期生效。

【讨论】:

    【解决方案4】:

    有类似的问题。有两个订阅组(年度和月度)批准的应用程序。它们是自动续订订阅。我们有数百名用户,他们希望我们通过删除订阅组并创建一个新组来进行更改。是否可以创建一个新组并将现有产品移至该组?不知道在这里做什么以及接下来会发生什么。

    【讨论】:

      猜你喜欢
      • 2017-10-29
      • 1970-01-01
      • 2019-01-21
      • 2016-10-23
      • 2018-06-01
      • 2016-01-25
      • 2011-07-09
      • 2011-06-29
      • 1970-01-01
      相关资源
      最近更新 更多