jen*_*irf 7 javascript geolocation ios cordova
我跑的时候
window.onload = function () {
document.addEventListener("deviceready", getGeolocation);
}
function getGeolocation() {
navigator.geolocation.getCurrentPosition( successCallback, errorCallback, {maximumAge: 0});
}
Run Code Online (Sandbox Code Playgroud)
要么
function getGeolocation() {
watchGeoMarkerProcess = navigator.geolocation.watchPosition(updateCallback, errorCallback);
}
Run Code Online (Sandbox Code Playgroud)
然后
function updateCallback(position) {
if (position.coords.accuracy < 100) {
navigator.geolocation.clearWatch(watchGeoMarkerProcess);
}
}
Run Code Online (Sandbox Code Playgroud)
在iOS 5上使用phonegap的应用程序中,似乎卡住了,因为地理位置指示器图标保持在顶部栏中并且它永远不会消失,我认为这意味着GPS没有被关闭.此外,有时我根本没有任何坐标,抛出超时错误.
我不认为代码有任何问题,因为它作为一个webapp工作得很好.
有任何想法吗?
我相信 navigator._geo 是“真正的”实现。我看到最近的 git 提交试图覆盖 navigator.geolocation 但显然在 iOS 上失败了。查看phonegap源代码让我产生了尝试真正的呼叫的想法。
这是关于该问题的另一个线程: https://groups.google.com/forum/? fromgroups#!topic/phonegap/W32yYpV28W8
更新:我现在有了一些成功的衡量标准:编辑你的phonegap.js,注释掉第3451-3453行,如下所示:__proxyObj(navigator.geolocation, navigator._geo,...
您将收到一个丑陋的权限警报..但该位置应该可以使用。此更改背后的原因是您现在将使用 safari 的位置检测,而不是 PhoneGaps。
UPDATE2:..PhoneGap 的问题原来是与另一个 javascript 库(在本例中为 Dragdealer.js)发生冲突。因此,请仔细检查您正在使用的任何其他 JavaScript 中是否有任何可疑的变量名称,例如“位置”或“位置”。由于某种原因,这种冲突在 iOS 以外的平台上并不是问题。
| 归档时间: |
|
| 查看次数: |
2482 次 |
| 最近记录: |