如何在离线模式下使用 Cordova Geolocation 插件
Posted
技术标签:
【中文标题】如何在离线模式下使用 Cordova Geolocation 插件【英文标题】:How to use Cordova Geolocation plugin in offline mode 【发布时间】:2016-11-27 10:47:43 【问题描述】:我在我的 ionic1 应用程序中使用ngCordova
Geolocation 插件。只有当我连接到 wifi 或移动数据时,它才会给我提供纬度和经度。如何离线完成这项工作?
离线模式的错误信息:
Network location provider at 'https://www.googleapis.com/' : No response received
注意:我搜索过,有人说我必须使用此选项:
enableHighAccuracy: true
但没有区别。
编辑:我发现它可以在真实设备中以某种方式工作。但不总是。它正在搜索gps,但有时它可以找到。有什么想法吗?
【问题讨论】:
也许 gps 需要太长时间才能找到位置,而您会超时? 【参考方案1】:我几乎找到了问题所在。我必须在部门外测试Geolocation
插件,否则gps无法找到我的位置。
在部门内部,它几乎找不到(几乎永远不会),但有互联网连接。在部门外,它在离线模式下工作。
【讨论】:
如果“inside department”的意思是“indoors”,而“outside department”的意思是“outdoors”,那么这是意料之中的:来自卫星的 GPS 信号被大多数坚固的建筑物遮挡,因此不会被在室内收到 - see here【参考方案2】:尝试增加插件的默认超时时间:
navigator.geolocation.getCurrentPosition(onSuccess, onError,
enableHighAccuracy: true,
timeout: 30000,
maximumAge: 30000
);
【讨论】:
我的超时时间是10000
。但是让我测试一下你的。
不!它只是在搜索gps,但找不到。它几乎找不到地理位置:(以上是关于如何在离线模式下使用 Cordova Geolocation 插件的主要内容,如果未能解决你的问题,请参考以下文章
如何在离线模式下从 Apple Watch 导入使用 HealthKit 的步骤?