CLLocation时间戳分数的第二个错误?

时间:2019-06-26 11:25:34

标签: ios swift timestamp cllocationmanager cllocation

对于我在iOS上的健身跟踪应用程序,我需要具有精确到千分之一秒的时间戳。 我不确定这是否是错误,但由于某种原因,每次位置更新时返回的时间戳都很好,给了我几分之一秒的时间,但它们一旦在GPS上都具有良好的锁定然后时间戳具有相同的分数。我不确定iOS是否有所改变,因为直到最近它还可以正常工作。还可以通过20米或以下的水平精度对位置进行过滤。

以下是使用格式yyyy-MM-dd HH:mm:ss.SSSSSS

的时间戳示例
Timestamp: 2019-06-26 12:07:21.168000
Timestamp: 2019-06-26 12:07:22.118000
Timestamp: 2019-06-26 12:07:23.068000
Timestamp: 2019-06-26 12:07:25.000000
Timestamp: 2019-06-26 12:07:26.000000
Timestamp: 2019-06-26 12:07:28.000000
Timestamp: 2019-06-26 12:07:31.000000
Timestamp: 2019-06-26 12:07:33.000000
Timestamp: 2019-06-26 12:07:35.000000
Timestamp: 2019-06-26 12:07:38.000000
Timestamp: 2019-06-26 12:07:39.000000
Timestamp: 2019-06-26 12:07:41.000000
Timestamp: 2019-06-26 12:07:43.000000
Timestamp: 2019-06-26 12:07:52.000000

任何人都知道发生了什么事吗?

1 个答案:

答案 0 :(得分:0)

用于打印日期的格式与精度无关。类CLLocation只是可以容纳timeStamp的数据类型,记录为“确定此位置的时间”。

有不同的系统可以创建CLLocation的对象,并可以插入他们想要的任何timeStamp。甚至可以包括舍入。对于您而言,您最好在后台查看2个不同的系统,以提供位置数据。他们可能使用不同的方式来确定时间戳。也许这是一个系统,它只有在新的一秒开始并将其用作时间戳时,才在某个时刻开始触发。

无论如何,您都需要检查正在创建CLLocation实例的系统,其中是否包含有关保证时间戳精度的信息。我不认为这是非常精确的。如果存在一个满足您要求的系统,则需要进行研究:“我需要精确到千分之一的时间戳”。