Phonegap WatchPosition 停止更新。忙?

Posted

技术标签:

【中文标题】Phonegap WatchPosition 停止更新。忙?【英文标题】:Phonegap WatchPosition stops updating. EBUSY? 【发布时间】:2012-10-05 15:14:44 【问题描述】:

我有一个 phonegap 项目,它在应用程序的后台使用 WatchPosition。它有时会起作用,但有时当应用程序启动时,我会收到位置超时错误 3。

我 iPhone 的日志显示该位置是 (EBUSY)。

这是一个phonegap错误吗?

代码:

  function onDeviceReady() 
                    var watchID = navigator.geolocation.watchPosition(onSuccess, onError,  timeout: 10000, frequency: 3000,enableHighAccuracy: true );
                
function onSuccess(position) 
            var deviceID = device.uuid;
            $.post("http://server.com/project/savelocation.php",  lat: position.coords.longitude, lng: position.coords.latitude, device: deviceID ,
               function(data) 
               console.log("Location updated.");
               );
               

正如我所说,它有时确实有效,但我得到的错误是:

[INFO] code: 3
    message: Geolocation Error: Timeout.

locationd[41] <Notice>: received EBUSY, try kScanTypeChannel, channel, 11, rssi -60, delayed 0.000s

这可能是 ios 6 错误吗?

我也有 Phonegap 1.2.0,所以我还没有使用最新的 Cordova 项目。

【问题讨论】:

【参考方案1】:

原来我需要升级到最新的 Cordova。 Phonegap 1.2.0 对 iOS 6 的支持太糟糕了!

【讨论】:

以上是关于Phonegap WatchPosition 停止更新。忙?的主要内容,如果未能解决你的问题,请参考以下文章

Phonegap watchPosition测量距离和触发事件

使用 watchPosition 或 getCurrentPosition 在 phoneGap App 中的最短更新时间?

navigator.geolocation.watchPosition 以速度返回 NaN

如何查看phonegap中的gps状态?

HTML 5 地理位置 watchPosition

实现Phonegap Android的Geolocation API