2013-04-29 97 views
4

我们的应用正在从付费转向免费,并且在此过程中将关键功能从包含内容移动到通过In-应用购买。很显然,我们不希望支付应用程序功能的当前用户在应用内购买中再次收取他们已有功能的费用。因此,在用户进行更新时,我们希望1)确定当前用户,并且2)制作它,以便他们不会首先看到应用内购买情况,也不会“欺骗”应用内购买,以便应用程序将以与之前完全一样的方式显示给他们。如何在从付费到免费的情况下为以前的应用用户恢复应用内购买

该应用程序没有后端,因此我们必须通过检查保存的用户数据字段中的某些值来确定当前用户。我明白,如果以前的用户从他们的设备上删除了应用程序,无法完成任何操作,并且我不介意向他们收取应用程序内购买费用,因为他们从未使用该应用程序。

但是对于那些更新并假设我们可以检查已保存的用户数据并确定它们是当前用户的当前用户,绕过应用内购买并使应用看起来像已经拥有的方式是一种好方法它,其实他们从来没有付钱?谢谢!

+0

没有好的方法让*开发者*免费下载应用内购买,所以似乎不太可能有办法让*用户*这样做。 – matt 2013-04-29 19:55:46

+0

请参阅http://stackoverflow.com/questions/1575965/transition-an-existing-paid-for-app-to-free-version-with-in-app-purchase?rq=1 – 2013-04-29 19:59:59

+0

只需上传免费试用版并要求人们购买它,如果他们想要? – Nimooli 2013-04-29 20:19:53

回答

1

这里就是我会做 - 记住,这将需要一些时间:

  1. 设置服务器(我喜欢EC2)与MySQL就可以了。大量的关于这个的教程。
  2. 向您的应用程序提交更新将您用户的UUID发送到您的服务器。
  3. 等待。这是最难的部分。您需要等到令人满意的多数人更新到您的应用程序。大部分的比例是由你自己决定的。 这可能需要几个月才能发生。
  4. 让您的新免费应用将UUID发送到服务器。
  5. 检查以查看UUID是否在DB中。
  6. 如果是这样,设置为无论您在应用内购买设置为true时设置的值如何。
+0

+1,但我认为您的解决方案过于复杂。他没有这个应用程序的后端 - 所以为什么不需要设置它。在任何情况下都需要一个中期应用程序:设置服务器不是。如果后端服务器已经存在,那么你的建议可能是最优雅的解决方案。 – 2013-04-30 08:58:03

1

您有几种选择:

免费应用程序内购买在有限的时间:

  • 您可以创建一个免费的一线应用程序内购买内容,并以某种方式释放的更新使用户注册它。这样,当用户切换设备时,他们可以恢复购买并重新获得功能。
  • 等待一段所以大多数人使用的应用程序内购买内容
  • 变化的层次和发布应用为免费

双版本

  • 制作的演示版本你的应用。请注意,这可能会被Apple拒绝。

在文件系统中

  • 创建一个文件,使在文件系统中的文件并保存到iCloud中。该应用程序将检查该文件,以及如何确定用户是否为应用程序付费(或者应该购买应用程序内购买)。
  • iCloud将在用户设备之间同步文件,并确保用户使用该应用的任何设备都会将用户视为“已付费”。

我希望这可以帮助,目前自己有这个问题。

相关问题