我正在编写一个应用程序,使用 phonegap 每 5 秒将更新的纬度/经度存储到 mysql 数据库。我希望能够让我的用户看到自启动应用程序以来行驶的总距离。
我查看了 Phonegap 地理定位 API,但看不到根据纬度/经度更新计算总行驶距离的方法。有没有办法做到这一点?
编辑:@ Drew 感谢您的链接。我已经看过了,Haversine 的 JS 版本看起来很简单。困难的部分将是 phonegap 拉动和存储纬度/经度的方式。目前我获取位置并将位置发送到 MySQL 的功能是
function geo_success(position) {
$("#status p").text("Tracking active");
$('#status').removeClass("stopped").addClass("active");
$('button').text("Stop tracking");
latlon.lat = position.coords.latitude;
latlon.lon = position.coords.longitude;
latlon.alt = position.coords.altitude;
if(!position.coords.speed) { latlon.speed = 0; }
else{ latlon.speed = position.coords.speed }
if(first) {
intervalId = setInterval(send, 5000);
}
first = false;
}
有没有一种方法可以考虑存储 lat1 lon1 的最新值并将以前的值用于 lat2 lon2 并通过这两组变量循环最新的传入坐标?这样我就可以从 hasrsine 中获取返回的变量 d 并将其存储在数据库中(以便稍后总结)。非常感谢。