CLLocation Timestamp fractions of a second bug?

For my fitness tracking app I need to have timestamps that are accurate to a thousandth of a second.

Im not sure if this is a bug or not but for some reason the timestamp I get back with each location update starts off fine giving me fractions of a second that are all different, but once it has a good lock on the gps each timestamp then has the same fractions of a second. Im not sure if something has changed with iOS because this was working fine until recently. The locations are also being filtered by horizontal accuracy of 20 meters or under.


Heres an example of timestamps using the format 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


Anyone have any idea what is going on?

Replies

Thanks for pointing this out. Some GPS receivers time-align their position fixes to the integer second once they've acquired sufficient information to produce high-quality locations.