繁体   English   中英

phonegap地理定位,代码3 - 超时过期一直在某些Android设备上弹出

[英]phonegap geolocation, Code 3 - timeout expired keeps popping up on some Android Devices

我正在使用PhoneGap API进行地理定位。 我已将enableHighAccuracy选项设置为“true”。 代码3,超时过期选项不断弹出,但仅在某些Android设备上使用该应用程序时不止一次。

请帮助我...为什么这只是在一些Android设备上失败。 如果我将精度设置为false,我将在检索坐标时获得多少差异...

使用以下代码管理解决我的问题:

var options = {maximumAge: 0, timeout: 10000, enableHighAccuracy:true};
navigator.geolocation.getCurrentPosition(onSuccess, onError, options);

似乎三星Galaxy手机不喜欢缓存gps的位置。

好的,这里有如何解决问题:

  1. 添加超时并设置enableHighAccuracy:

     navigator.geolocation.getCurrentPosition(onSuccess, onError, {timeout: 10000, enableHighAccuracy: true}); 

    在某些模拟器中,您需要将enableHighAccuracy设置为false,因此如果仍然不起作用请尝试。

  2. 在Android中,模拟器不读取GPS值,因此我们需要通过命令行发送它们。 我们需要在运行模拟器的端口中启动一个telnet会话(您可以检查模拟器窗口标题中的端口,开头的数字,在我的情况下为5554):

     telnet localhost 5554 

然后运行命令

    geo fix -122.4 37.78

如果您关闭应用程序,则需要重新发送地理位置,因此如果它不起作用,只需在打开应用程序之后,在超时事件触发之前运行geo fix命令。

我在三星Galaxy Note II(Android 4.1.1)上遇到了同样的错误。 出于某种原因,当位置设置下的“使用无线网络”打开时,它可以正常工作,但如果它关闭则会出现代码3错误。 它没有发生在Nexus 7(4.2.2)上。

哎哟,在这里发现同样的问题。 希望有一个更好的方法,比要求用户友好地改变他们的GPS设置。 三星Galaxy III

(在没有此选项的情况下“使用无线网络查找位置”失败时工作)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM