ios - 日期对象随设备设置而变化? ( swift 3)

标签 ios swift date

一个非常简单的问题,但似乎仍然很难找到答案,因为我在 Stack 上找到的线程都不是我正在寻找的:有没有办法使用 Date () 对象来获取实际日期和时间(可能来自服务器)而不是用户设备上设置的日期和时间?

我想要一个 Timer() 对象倒计时到某个时间,例如今天下午 6 点。如果是下午 3 点,计时器将显示还剩 3 小时,但如果我进入设置并将时间提前 2 小时设置为下午 5 点,我的应用程序中的计时器现在将显示只剩下 1 小时。我不想要这个。我不希望设备上的日期/时间影响我的应用程序中的日期/时间表示。我希望我的应用程序向我显示来自 Apple 服务器的实际不可更改的日期/时间(我非常确定应该存在于 iOS 环境中的某个位置,因为可以将设备的日期/时间设置设置为“自动”,这使得您的设备显示服务器时间而不是自定义设置的日期/时间)。

就像我说的,非常简单的问题,但我想绝对确定我没有被误解,因为其他线程上的很多评论者给出了一些无用的、不相关的答案。我真的希望可以使用 UIKit 或任何其他 Swift 标准 SDK 提供的工具来做到这一点,尽管我担心最坏的情况(我需要实现一个第三方框架来实现这一点) .

最佳答案

使用标准的苹果工具无法实现这一点。您应该通过网络请求服务器时间,如果设备“离线”,您将无法执行任何操作,除非阻止用户访问应用程序功能。

拒绝用户设置时间提前(以获得一些每日奖励)的更好、更简单的方法是跟踪“游戏中”时间并设置如下内容:用户必须在之前至少 10 分钟(从最后一天的奖励开始)使用该应用程序他可以领取新一天的奖励。

这样向前滚动时间就不那么有趣了。大多数用户不会这样做。

关于ios - 日期对象随设备设置而变化? ( swift 3),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46111408/

相关文章:

ios - Swift - 如何使用 XIB 文件创建自定义 viewForHeaderInSection?

iOS。从位置创建到谷歌地图的网络链接

ios - 如何使用 segue 将字符串传递给 textView?

ios - 如何使用AVKit播放HTTP流视频

php - 获取 15 至 30 分钟前的数据

iphone - MKMapview 影响 UINavigationBar 和 TabBar 外观

ios - 企业(内部)Swift 应用程序在 iOS9 上启动时退出

ios - 在 Apple Watch 应用程序上实现应用程序内购买自动续订订阅?

javascript - Python 读取 Javascript 日期

php - mysql时间戳转换/格式化通知: A non well formed numeric value encountered