0

我正在尝试使用 System.currenttimeMillis() 比较从两个不同应用程序获得的时间戳值。我在同一时间间隔内在由同一家公司制造并具有相同服务运营商连接的两部不同智能手机中运行这些应用程序。

我的困惑是,当我比较来自两个不同应用程序的这些 timeStamped 值但使用相同的过程生成时间戳值时,即 System.currenttimeMillis(),这些值变化很大。而且我无法证明这样做的原因,有人可以对此有所了解。

另一个查询我想问一下,如果我想比较来自两个不同应用程序的两个 timeStamp 值,我应该使用什么函数来比较这些值。注意:准确性至关重要(大约以毫秒为单位)

谢谢

4

2 回答 2

0

由于 CPU 之间的差异,不同设备的时间戳可能会发生变化。此外,您可以使用相对较小的 DELTA 来了解它是否不同。假设您从第一个设备得到的是 TIMESTAMP1,另一个是 TIMESTAPM2。因此,如果 TIMESTAMP1-TIMESTAMP2>DELTA 那么它们是不同的,否则它们是相同的。

于 2013-09-30T20:44:41.923 回答
0

时间戳不相同是正常的。您可以尝试使用本地 NTP 服务器来降低设备之间时间同步的延迟。或者可能是 GPS 时间。但我不确定设备是否可以快速“处理”gps 时间以确保时间正确。

于 2013-09-30T21:13:39.857 回答