ios - 在离线模式下获取 iOS 中的时差

标签 ios swift xcode nsdate nstimeinterval

我有一个可以离线和在线使用的应用程序。我收到客户的请求,要求嵌入一项功能,该功能将禁止用户在几天(例如 7 天)后使用某些功能。

如果在线,我可以通过比较服务器时间之间的时间间隔轻松完成此任务。

但在离线模式下,这一直是个问题。我尝试通过在 USerDefault 中保存服务器时间戳来实现此目的,并且当应用程序进入前台时,将当前 NSDate 与保存的 NSDate 进行比较以获取时间间隔。但是,我发现这可以通过操纵“设置”中的日期和时间轻松破解,并且应用程序中的这些功能将永久有效。

我想到的另一个解决方案是,如果设置中未将日期时间设置为自动,则禁用该应用程序。但是,发现Apple并没有公开访问日期和时间的API。

我在互联网上搜索了其他答案,但找不到解决此问题的解决方案。另外,尝试了一些离线游戏应用程序来检查,但发现我可以更改日期和时间来操纵它们的功能。

那么,有没有什么可靠的解决方案来解决这个问题呢?任何帮助都非常值得赞赏。

最佳答案

you can manage timings on the server through API calls when the user goes offline or log out or something. so you can easily get to know your exact timing and it is also not hackable :)

关于ios - 在离线模式下获取 iOS 中的时差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51765624/

相关文章:

swift - 如何在 SwiftUI 中从登录 View 转换为 tabView

ios - iCloud - NSCoding 或核心数据

ios - 知道对象是否为文件夹的资源占用最少的方法是什么?

swift - 使用异步收集 Publisher 值

ios - 我如何在 iOS swift 中对我的自定义 FBSDK 登录按钮进行操作

ios - 将 RSS 提要加载到 IOS Swift

ios - 具有动态原型(prototype)内容和多部分的 UITableView

ios - 在 iOS 记录事件后从 Firebase Analytics 发送邮件

iphone - 无法识别的选择器发送到实例 0x5d18d60...我要疯了!

ios - Xcode: sigabrt 错误