0

我正在实施一个试用版,然后将模型订阅到我的应用程序中,该模型允许用户免费使用该应用程序 14 天,然后在试用期结束时它会提醒他们试用期结束,他们需要订阅才能继续使用.

我在第一次打开应用程序时设置一个NSDate对象。standardDefaults然后它将当前日期与存储的日期进行比较,并将返回的时间间隔与 14 天的秒数进行比较。

我的问题是:standardDefaults如果用户删除应用程序,是否保留在内存中?如果没有,如何防止用户删除然后重新下载应用程序以重新开始试用期?

4

2 回答 2

3

Apple 对他们的沙盒概念以及如果删除应用程序,所有数据都将被删除这一事实感到非常自豪。

确保此信息不会丢失的唯一方法是将其保存到服务器上的数据库中,并从您的应用程序中定期检查。

这作为技术解决方案。但是请确保,如果您打算在那里发布它,Apple 是否会允许在AppStore中使用它。

Apple 禁止试用版,但我不确定,如果您可以在一段时间内免费提供应用内购买的内容,然后再开始计费。

但主要规则是:曾经免费提供给用户的东西必须保持免费。

于 2013-02-09T15:53:50.433 回答
2

有些应用程序对某些功能有试用期。查看 Puffin Browswer 或 ChessFree,它们都提供过期的功能。Puffin 允许 Flash 支持(实际上非​​常酷的功能!),几天后该功能被删除。尽管浏览器的其余部分仍然可以访问,但它的主要目的已被删除。

ChessFree 为您提供积分,您可以将这些积分用于不同的事情、课程、玩游戏、退步等……我不确定当您用完积分时会发生什么,但似乎您真的无法再做任何事情了。

如果我要实现这样的东西,我只会在钥匙串中保存一个变量,告诉他们还剩多少天或他们安装它的日期(作为字符串)。这样,如果应用程序被卸载,它也不会被删除(即使应用程序被删除,钥匙串项目也会保持存储,所以只要你想检查/减少/增加它)。我可能会为达到过期时间限制的用户保留一些功能(如 Puffin),但老实说,我相信这取决于你。

于 2013-02-09T16:23:25.610 回答