每个iOS设备上的NSDate是否同步?

时间:2016-02-19 21:34:43

标签: ios swift clock

目前我正在编写一个应用程序,该应用程序需要每个iOS设备都有某种同步时间才能正常运行。我知道我可以使用NSDate来获取当前时间,但我不确定所有iOS设备(无论它具有什么位置设置,或者用户手动设置时间)都将具有相同的NSDate。同步时间必须足够准确(最大差异<10ms)。我可以直接使用NSDate吗?

3 个答案:

答案 0 :(得分:2)

不,你不能依靠NSDate来提供这些信息。

您可以使用实时服务器提供此信息。 Check,它可能对您有帮助。

同时检查NTP协议,您可以轻松地使用this github project从受信任的时间服务器获取当前时间,whiteout依赖于该设备。

答案 1 :(得分:1)

  

但我不确定是否所有iOS设备(无论设置的位置设置,或者用户手动设置时间)都具有相同的NSDate。

显然他们不会,因为有些人手动设置时间,所以它可能相当遥远。

答案 2 :(得分:0)

设置 - &gt;一般 - &gt;日期&amp;时间 - &gt;关闭&#34;自动&#34; - &GT;把时间设置为你想要的任何东西。很明显你要求的是不可能的。

如果您想要同步,那么在多个设备之间执行此操作的唯一方法是使用中央服务器来保留时间,并且每个人都在您的代码中使用该服务器报告的时间。