iOS应用程序:是否可以确定用户是否购买了某个版本的应用程序

时间:2013-03-08 23:21:52

标签: ios app-store versioning

在iOS中,有没有办法找出用户最初购买的应用程序版本?

例如,如果我只想为购买v1.0的用户实现某些特殊行为,该怎么办?一个明显的“功能”是禁用应用程序内购买,这样他们可以享受休息而无需支付?我想了一些方法来做到这一点,但不幸的是,如果用户删除了应用程序并且我没有及早用户icloud来持久保存这些元数据,它将无法在测试中存活下来。

1 个答案:

答案 0 :(得分:3)

不幸的是,这无法做到。至少不是以任何完美的方式。没有API可以获取有关用户及其购买的任何详细信息。如果您的1.0版本的应用程序尚未保留一些有意义的线索,那么您唯一的解决方案就是部分解决方案。

如果您已经有较新版本的应用程序(例如1.1)并且您想要将此新功能添加到较新版本(1.2或2.0),则问题会变得更糟。没有办法知道是否有人有1.0。

您基本上有两个选择:

  1. 不管它。您无法将付费应用转换为免费的IAP应用,而不会至少损害现有客户的某些部分。如果有的话,让应用付费,但为任何新功能添加IAP。这样,每个人都为基本应用支付相同费用,每个人都可以通过IAP支付更多费用以获得更多功能。
  2. 根据您的道德规范和现有客户的数量,您可以进行切换并让现有客户再次为其已支付的功能付费。显然,这是一个坏主意,但它是一种选择。