【发布时间】:2016-08-04 16:44:12
【问题描述】:
我使用的是cordova 6.1.1,并且我使用的是最新版本的cordova-plugin-geolocation。我尝试了getCurrentPossition(onSuccess,onError) 和watchPossition(onSuccess, onError)。而且他们俩都没有立即更新我在(纬度,经度)的地理位置。
我将跟踪我的locator.js 在getTagLocation() 中的位置
getTagLocation: function(tagId,callback) {
console.log('in getTagLocation func')
locator.TrackingLocation();
},
跟踪位置定义为:
TrackingLocation: function() {
var onSuccess = function(position) {
locator.devicePosition.coords.latitude = position.coords.latitude;
locator.devicePosition.coords.longitude = position.coords.longitude;
locator.devicePosition.timeStamp = position.timestamp;
};
var onError = function(error) {
console.log("[ERROR]: "+error);
};
navigator.geolocation.watchPosition(onSuccess,onError);
},
而在我的app.js,我会显示位置:
displayResult: function(data){
app.display("output message : ");
app.display(data);
},
connectSuccess: function() {
console.log("in connectSuccess");
app.display("Connected to: " + app.macAddress);
connectButton.innerHTML = "Disconnect";
locator.getTagLocation('00176883',app.displayResult);
setTimeout(function() {
locator.unsubscribeTagLocation(app.displayResult);
}, 30000);
},
在我看来,我所做的是将原始函数包装到我的定位器中。所以,在30s的时间段内,它应该尽快更新我的位置。但它不会在大约 5 到 6 秒左右更新我的位置,有时甚至超过 10 秒。我没有在他们的仓库中找到问题跟踪器,所以我在这里问我的问题。
【问题讨论】:
标签: javascript cordova geolocation cordova-plugins