iOS上的PhoneGap Geolocation总是会缓存GPS - 为什么?

时间:2017-09-22 06:01:58

标签: jquery ios geolocation phonegap

我在PhoneGap上的iOS上运行它:

navigator.geolocation.getCurrentPosition(geolocationSuccess,geolocationError, { 
maximumAge: 1000, timeout: 10000 , enableHighAccuracy: true } );

如果我移动几英里外,打开应用程序并运行地理定位,它会显示我之前的位置。它没有获得新的位置。当我打开谷歌地图时,例如..然后再次运行地理定位,它会显示正确的位置。

换句话说,我需要打开另一个应用,然后获取我的应用的正确位置,以获得正确的位置。

这几乎就像iOS对我说谎并给我一个缓存的位置,而不是给我一个新的。

我甚至试过watchPosition循环播放,它也会让我恢复旧的缓存GPS。

我在这里做错了什么?

1 个答案:

答案 0 :(得分:1)

完全相同的问题,虽然我没有设置任何选项:

this.geolocation.getCurrentPosition()

打开和关闭应用程序,重新启动手机,没有任何内容,GPS在小数点后14位是相同的,所以无论手机移动了多少英里,显然都会被缓存。

唯一的区别是maximumAge,我设置为0(即使0应该是默认值):

var geoOptions = {
 maximumAge : 0,
 enableHighAccuracy: true
};
this.geolocation.getCurrentPosition(geoOptions)

这只发生在单个IOS手机上,其他IOS手机运行正常。像我上面那样设置选项修复了它,这并没有表明与最初导致这种情况有关的任何事情。

相关问题