2013-09-30 70 views
0

我想比较()采用System.currentTimeMillis的从两个不同的应用程序中获取的时间戳值。我在同一公司生产的两个不同的智能手机中以相同的时间间隔运行这些应用程序,并且具有相同的服务运营商连接。从不同的手机比较两个时间戳

我的困惑是,当我比较两个不同应用程序的这些时间戳值,但使用相同的过程生成时间戳值(即System.currenttimeMillis())时,这些值会有很大差异。而且我无法证明这个原因的合理性,有人可以对此加以说明。

而另一个查询我想问一下,如果我想这两个时间戳值从两个不同的应用程序相比,什么是我应该使用的比较值的最佳功能。注意:精度是最重要的(大约毫秒)

由于

回答

0

时间戳为不同的设备可以的,因为CPU之间的差异而改变。此外,您可以使用相对较小的DELTA来了解它是否与众不同。 假设您从第一个设备获得的是TIMESTAMP1,另一个是TIMESTAPM2。所以,如果TIMESTAMP1-TIMESTAMP2> DELTA那么它们是不同的,否则它们是相同的。

+0

你能否澄清我,DELTA恰恰暗示了你的意思。如果你有一些相关的链接,你可以发布它。谢谢 – RockStar

0

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

+0

感谢您的建议,但我正在实施手机上的两个应用程序,这些应用程序被限制在建筑物内,因此我无法访问GPS。斯蒂芬我不想降低延迟,但我确实希望在一定的时间间隔内使用两个不同的手机获取确切的时间戳值。 – RockStar