我有一个游戏,用户每小时可以进行一次特定的活动。我怎样才能确定自从他们最后一次尝试没有他们只是改变设备当前设置的时间以来已经过了一个小时?
此外,如果我想阻止用户只是删除应用程序并重新安装它,以便他们可以不断等待到整整一小时继续尝试,即使在应用程序之后我也可以在设备上存储数据删除或者必须是服务器吗?
如果我没有服务器,任何人都可以通过免费应用内购买或其他方式想到一个聪明的方法吗?
答案 0 :(得分:4)
以survives app reinstalls将keychain保存为shared across multiple applications的方式保留数据的唯一方法。这是有效的,因为钥匙串数据可能是NTP;卸载时删除了应用程序的其余数据。
如果您需要一种可靠的方式来告知当前时间,则必须将设备连接到互联网。在这种情况下,您可以通过{{3}}使用其中一个时间服务来检查当前时间。
答案 1 :(得分:2)
这听起来就像你需要一台服务器那样的任务。
当用户想要执行此限制操作时,让他们向服务器请求许可。您可以记录用户的ID和请求时间,确定他们是否可以执行操作,然后返回一个小的成功/失败消息。如果他们改变他们的时钟,如果他们从不同的设备登录,则工作,如果他们擦除设备数据,则有效。