use*_*040 7 android geolocation cordova
我正在使用PhoneGap API进行地理定位.我已将enableHighAccuracy选项设置为"true".代码3,超时过期选项不断弹出,但仅在某些Android设备上使用该应用程序时不止一次.
请帮助我...为什么这只是在一些Android设备上失败.如果我将精度设置为false,我将在检索坐标时获得多少差异...
Geo*_*iou 10
使用以下代码管理解决我的问题:
var options = {maximumAge: 0, timeout: 10000, enableHighAccuracy:true};
navigator.geolocation.getCurrentPosition(onSuccess, onError, options);
似乎三星Galaxy手机不喜欢缓存gps的位置.
好的,这里有如何解决问题:
添加超时并设置enableHighAccuracy:
navigator.geolocation.getCurrentPosition(onSuccess, onError, {timeout: 10000, enableHighAccuracy: true});
在某些模拟器中,您需要将enableHighAccuracy设置为false,因此如果仍然不起作用请尝试.
在Android中,模拟器不读取GPS值,因此我们需要通过命令行发送它们.我们需要在运行模拟器的端口中启动一个telnet会话(您可以检查模拟器窗口标题中的端口,开头的数字,在我的情况下为5554):
telnet localhost 5554
然后运行命令
    geo fix -122.4 37.78
如果您关闭应用程序,则需要重新发送地理位置,因此如果它不起作用,geo fix只需在打开应用程序之后立即运行命令,然后才会触发超时事件.
我在 Samsung Galaxy Note II (Android 4.1.1) 上遇到了同样的错误。由于某种原因,当位置设置下的“使用无线网络”打开时,它可以工作,但如果关闭,则会出现代码 3 错误。Nexus 7 (4.2.2) 上没有发生这种情况。
| 归档时间: | 
 | 
| 查看次数: | 8677 次 | 
| 最近记录: |