iOS 限制功能的使用

iOS limit usage of a feature

问题

当用户下载我的应用程序时,他们将能够使用特定功能。说,5次。时间结束后,他们将需要 iAP 才能继续使用它。但是,我有一些问题。

我想简单点,把它存储在 userDefaults 或 keychain 中。但是,如果他们重新下载该应用程序,他们是否可以再访问该功能 5 次?

而且我不想包含来自数据库的外部信息以及用户登录信息等。

解决方案

能够检查这个特定的 phone 之前是否使用过该应用程序,如果没有。他们有 5 个存储在他们的默认值中。但是,如果他们不知道从那里去哪里?

如果您保存了他们的使用计数器,请检查 NSUserDefualts。如果没有,将其保存为 1,否则递增。

如果你之前保存过,增量为5,告诉他们免费试用结束。

1- 用户可以随时恢复他的设备并重建钥匙串并使用 5 倍以上。

2- 可以设置服务器进行用户管理。

我想第一个选项是可以接受的,并且比第二个更容易。没有多少人重置他的设备的数据只是在某些游戏中多了 5 个权限。

技术方面 - 如果他们删除应用程序,我相信您会失去 NSUserDefaults,如您所见 here。使用 iCloud 怎么样?那太多了吗?您可以存储试用期结束。但是,是的,该操作需要互联网连接。

如果你的应用真的很好,用户会想要使用它,那么他们就不会考虑删除和重新下载。如果他们看不到 iAP 的价值,他们会尝试 "hack" 它。这是一个哲学答案...