我将cordova 2.9.0 与PhoneGap Build 一起使用。我编写了一个应用程序,用户可以在其中在特殊位置到特殊时间签到。我的问题是,当我在各种设备上安装 de app 时,有时总是会出现超时(这只发生在 Android 设备上)。当我重新启动设备时,地理定位工作并获得 gps 数据。现在我想知道是否有另一种方法可以解决这个问题。我在 deviceReady 函数中的地理位置代码是:
var geo = cordova.require('cordova/plugin/geolocation');
var optionsGeo = {maximumAge: 0, timeout: 30000, enableHighAccuracy: false};
var watchID = geo.watchPosition(onSuccessGeo, errorGeo, optionsGeo);
function onSuccessGeo(position) {
lat = (position.coords.latitude).toFixed(6);
lon = (position.coords.longitude).toFixed(6);
accuracy = (position.coords.accuracy).toFixed(0);
console.log("Lat " + lat + " Lon " + lon + " & " + accuracy + "m");
}
function errorGeo(error) {
console.log("Geo-Fehler! Code: " + error.code + " Nachricht: " + error.message);
}
我尝试了不同的超时值并启用了 HighAccuracy - 但没有任何帮助。谢谢。