NSDate,NTP和运营商时间

4

我刚在文档中读到:

Cocoa 根据网络时钟协议(NTP)标准实现时间,该标准基于协调世界时。

我可以认为 OSX 会与互联网同步,对吗?

iOS 设备呢?这些相同的 NSObjects (NSDate, NSCalendar 等…) 是否也会与互联网同步,还是从 iPhone 的运营商获取时间(例如AT&T, Verizon等)? Cocoa-Touch 在获取和同步时间方面是否与 Cocoa 相同?

如果不同,并且从运营商那里获取时间,那么如何从互联网获取时间用于 iOS 应用程序呢?我不需要示例代码 - 我只需要指点正确的方向。

谢谢!

1个回答

2

iOS从不同的来源获取时间,其中之一是NTP。理想情况下,时间从GPS更新-这是您可以获得的最准确的时间(基本上是原子钟),或者从运营商(通过NITZ)中更新。否则,设备将使用NTP。最后,当您将设备插入iTunes时,也会更新时间。因此,Cocoa Touch不同之处在于它既具有GPS又具有Cocoa没有的运营商。


有没有一种编程方式可以从这些源中获取时间,比如GPS和NTP? - ArtSabintsev
不,这是由iOS级别进行管理的,就像核心定位正在计算您的位置一样 - GPS,蜂窝网络,Wifi等。他们只会尽力提供最好的服务。 - TommyG
iOS的时间非常不准确。即使使用自动设置,在不同设备之间也会相差数秒。 - openfrog
如何获取当前时间,在NSDate中我总是得到运营商的日期! - IgniteCoders

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接