Ios 使用TrueTime获取设备独立时间的可靠性如何?
我最近发现了一个名为TrueTime的库,用于获取不依赖于设备时间的时间。它使用NTP来获取时间 因为该库主要是为swift 3构建的。但我在一篇文章中发现,为了使swift 4兼容,文件中做了一些更改 因为我正在为这个库使用swift和pod。我解锁了吊舱,并在库中进行了更改,以便使用swift 4 这个图书馆有多可靠 我担心的是Ios 使用TrueTime获取设备独立时间的可靠性如何?,ios,swift,ntp,Ios,Swift,Ntp,我最近发现了一个名为TrueTime的库,用于获取不依赖于设备时间的时间。它使用NTP来获取时间 因为该库主要是为swift 3构建的。但我在一篇文章中发现,为了使swift 4兼容,文件中做了一些更改 因为我正在为这个库使用swift和pod。我解锁了吊舱,并在库中进行了更改,以便使用swift 4 这个图书馆有多可靠 我担心的是 苹果在提交应用程序后批准 支持即将推出的swift和iOS版本 有更好的替代品吗?苹果肯定不会拒绝。它不在房间里。我甚至在app store上有一个使用True
有更好的替代品吗?苹果肯定不会拒绝。它不在房间里。我甚至在app store上有一个使用TrueTime的应用程序 关于可靠性,如果你指的是“获得正确的真实时间的可靠性”,那么它是相当可靠的。该库似乎从
time.apple.com
获取时间。这似乎来自苹果,所以我想说你可以信赖它
如果你所说的“成功请求的可靠性”是指可靠性,那么这在很大程度上取决于:用户的互联网连接、TrueTime库中的漏洞等。根据自述
- 可达性事件会自动计入暂停/启动 请求
- UDP请求并行执行,默认限制为5 平行通话。如果其中一个失败,我们将在默认情况下重试最多3次
这就是请求的行为。NTP是一种标准的网络协议。为什么苹果会对使用NTP的应用程序产生问题?任何第三方代码的风险在于,您要么依赖代码的维护者,要么自己进行维护。这里没有人能告诉你风险是否可以接受;您必须平衡风险与从头开始构建自己代码的成本。如果您不想依赖用户手动修补设备时间,您还可以查看设备
启动时间
谢谢您的解释。我想知道长期项目的可靠性。比如说,今天我将iOS 9与swift 4配合使用,因此一年后,新的iOS版本与新版本的swift一起发布,那么它是否可靠?@DhirajKumar新的iOS版本不太可能打破pod。Swift版本是不相关的,因为您的代码已经编译过了。如果您担心pod的作者不会将pod更新为较新的Swift版本,我猜他们会,但不一定会。这个库有其他版本吗?@Techiee您可以试试NTPKit:,用Obj-C编写,因此,它自动连接到Swift,当新版本的Swift问世时,它不会中断。我的设备和服务器之间的时间间隔是否保持不变?