小艾的自留地

Stay foolish, Stay hungry

最近手头上有一个项目,有苹果支付订阅的需求,一开始使用 Stripe 集成的订阅方案实现。

功能没有问题,确实可以实现完整订阅,取消订阅逻辑。

但是无法上架 App Store。

因为要上架 App Store,必须要使用 In-App Purchase(应用内购买),而 Stripe 提供的订阅功能,是不走 In-App Purchase。

因此,要上架 App Store,只能重新接入原生的苹果支付。

在正式接入苹果支付之前,需要先了解一些概念:

  1. 什么是 App 内购买项目?
  2. 什么是订阅?
  3. 什么是非消耗型 App 内购买项目?
  4. 什么是消耗型 App 内购买项目?

什么是 App 内购买项目?

App 内购买项目是指你在 App 内购买的额外内容或订阅。不是所有 App 都会提供 App 内购买项目。要在购买或下载某个 App 之前检查这个 App 是不是提供 App 内购买项目,请在 App Store 中找到这个 App。然后在这个 App 的价格或“获取”按钮附近查看有没有“App 内购买”字样。

App 内购买项目共分三种类型 — 订阅非消耗型购买项目消耗型购买项目

什么是订阅?

订阅是指你支付相应的费用,以便能够在一段时间内访问某一 App 或服务中的内容。例如,你可以按月订阅 Apple Music。订阅包括你在 App 中注册的服务,例如视频流媒体服务或音乐流媒体服务。

除非你取消订阅,否则大多数订阅会自动续订。对于某些 App 和服务,你可以选取订阅续订的频率。例如,这些 App 和服务可能会为你提供每周、每月、每季度或每年的订阅选项。

什么是非消耗型 App 内购买项目?

下面列举了非消耗型 App 内购买项目的示例:

  • 去除广告
  • 完整版游戏解锁
  • 升级到专业版本
  • 奖励游戏关卡

你只需购买一次这些项目,即可传输到与你的 Apple ID 相关联的其他设备上。如果你丢失了非消耗型购买项目,或许可以免费恢复。

什么是消耗型 App 内购买项目?

下面列举了消耗型 App 内购买项目的示例:

  • 游戏币,例如金币或宝石
  • 游戏中的额外生命值
  • 导出为新文件格式的文件包

每次需要这些项目时,你都需要重新购买,并且你无法免费重新下载已购买的项目。如果你移除并重新安装 App,或在新设备上安装 App,这些消耗型购买项目可能会丢失。例如,如果你之前曾在 iPhone 上开始玩一款游戏,而后又在 iPad 上安装了这款游戏,则游戏关卡会同步,但你在 iPhone 上购买的额外生命值不会同步。

在了解了一些基础知识之后,下一步就可以准备开始接入订阅了。

推荐阅读

  • Apple In-App Purchase 支付(二)

评论