所以我的应用程序几个月前就发布到了AppStore,可以免费下载。我获得了大约2k个用户。现在我正在实现一个自动可再生订阅模式,这样未来的用户就可以免费使用演示应用程序并订阅以获得完整的内容。
我多么想感谢我的用户"从第一天起";通过让他们免费访问所有内容而无需支付订阅费。
是否存在";"让路";如何实现这一点,因为这似乎是一个常见的场景。如果没有,有IAP经验的人是否有一个聪明的解决方法——如何处理/实施它?
谢谢各位:D
如果你在应用程序中使用CoreData作为数据库,你可以使用我为我的应用程序找到的解决方案。
想法:
如果有人从应用商店下载该应用程序,他将在您的应用程序中收到最新的数据库版本
如果有人更新您的应用程序,coredata将执行迁移。这种迁移通过数据库版本从下到上进行更新
通过这种行为,我们有机会确定这两种情况。
解决方案:我们创建了两个新的数据库版本。其中一个将只由以前的用户更新。我们将在这里立一面旗帜。新用户永远不会接触到这一点。
第一个新字段将在任何实体(例如User(中创建一个新的attribut字段,例如作为Bool的isFormerUser。您可以将其默认设置为true。
现在我们创建一个第二个新的(最新的一个(。通过核心数据映射器,如果迁移,它将获得$source属性。因此,在这种情况下,所有FormerUser都设置为True,并将保留该属性。这里的默认值是False,所以如果$source不存在,请将其设置为False(new Users(。
这个解决方案很好,因为它可以通过迁移/更新设置一次,并且您不必在应用程序中携带硬编码的东西现在只需从CoreData为该属性创建一个load/get函数,并设置一个变量用于if语句。