检查系统时间是自动还是用户设置

我需要在当前项目中设置用户certificate的时间。 我发现了很多不同的问题,但没有一个似乎有我正在寻找的答案。 这些是我到目前为止所看到的问题:

XCODE:如何从设备获取/validationACCURATE时间戳

是否有可能从iphone GPS获得primefaces钟时间戳?

我怎样才能在iPhone中获得实时,而不是用户在设置中设置的时间?

我有几个从服务器连接获取时间的选项,但是我也需要一个脱机解决scheme。

看起来,使用CLLocation获取的时间与设备时钟相同。 有没有拿到实际的GPS时间?

2.我知道系统时间设置不是公共API,因此不能改变。 是否有可能找出设备是否打开了自动时间设置? 如果自动时间是开的,那么我可以依赖系统时间来达到我的目的,如果没有,那就logging下来,这样我知道logging的时间是不可信的。

只是想发布我的解决scheme,incase其他人有同样的问题。

经过很多研究,我发现获取GPS时间设置信息是不可能的。

这个解决scheme不是完美的,也不是实时的,但为我的目的工作。

每次应用上线时,我都会使用云时间进行时间检查。 当设备重新build立服务器连接以同步在离线创build的事件时,我已经进行了一个validation,它将最后一个目标设备时间和新的目标设备时间并计算两者之间的经过时间。 (使用NSdates以涵盖夏令时),然后对最后可用的服务器时间和最近的服务器时间执行相同的操作。 然后我比较结果,如果它们不在我的误差范围内,事件被标记为无效。

希望有道理,对别人有帮助。