2013-03-01 78 views
0

我在安卓手机上使用我网站上的地理位置时遇到了问题。Android - HTML地理位置

我有以下的javascript代码:

if (navigator.geolocation) { 
    console.log("true"); //gets logged 
    navigator.geolocation.getCurrentPosition(sucess, error, {timeout: 5000}); 
} 

它总是超时,并error.code 3和返回Error.message “超时过期”。

这发生在Android 2.x和4.x版本上。请注意,这不是与phonegap或类似的组合。这是一个普通的旧网站,在浏览器中打开。

该代码在iPhone上正常工作。

有没有......我的代码错了,或者它是在android端的问题?

+0

可以在5秒不够 – njzk2 2013-03-01 15:39:49

+0

试了一下,没有帮助 – marius2k12 2013-03-01 15:54:23

+0

为“启用位置”在浏览器设置检查? – njzk2 2013-03-01 16:31:31

回答

1

我在我的android上使用了下面的代码没有问题。如果您想再次调用该函数,只需在坐标函数中设置超时值即可。

if (navigator.geolocation) { 
    console.log("true"); //gets logged 
    navigator.geolocation.getCurrentPosition(coordinates); 
} 

function coordinates(location) { 
    latitude = location.coords.latitude; 
    longitude = location.coords.longitude; 
}