我正在创建一个获取用户当前位置的应用程序,但问题是当我长时间请求位置时它会提供旧位置。所以我想比较它们之间的时间戳,如果位置很旧,我需要丢弃它并希望得到新的位置。
我怎样才能在android中实现它? 提前谢谢。
答案 0 :(得分:0)
时间戳以毫秒为单位进行测量 要计算差值,请减去表示为长值的时间戳 除以1000得到秒。
long timeDiffSeconds = (dateNew.getTimeStamp() - dateOld.getTimeStamp()) / 1000;
if (timeDiffSeconds > 5) {
// old location
}
为了使yor代码对手动系统时间更改具有鲁棒性,例如通过时区更改,您可以使用时差的绝对值来改进上述代码:
if (Math.abs(timeDiffSeconds) > 5) {