手机在Android上唤醒后,带GPS的HTML5地理定位失败

时间:2012-01-13 17:03:36

标签: javascript android html5 geolocation

我正在建立一个使用HTML5 Geolocation API的网站。

在Android的默认浏览器中,一切正常,但我有一个奇怪的错误,似乎只出现在Android设备上。

在第一页加载浏览器时,询问我是否接受共享我的位置,地理位置功能按预期工作。

但是如果我在浏览器中打开请求地理定位的页面时手机处于睡眠模式,那么我唤醒手机并重新加载该页面,地理定位不再起作用。即使GPS图标出现在任务栏中并正常闪烁..

使用no service参数调用错误回调,这意味着页面会看到GPS设备但无法读取其数据。

无论我刷新页面多少次,我总会收到此错误。

但是,如果我转到“设置”并清除地理位置访问权限(跟踪哪些网站具有地理位置权限的设置),则使用任务管理器终止浏览器,然后重新加载浏览器并再次尝试,它再次开始工作

至于其他浏览器,我尝试过Firefox,Dolphin HD和Opera,但它们都不起作用。它询问我是否想要分享我的位置,我回答是,我得到了无服务错误。再次出现GPS图标并在任务栏中闪烁..

在某些时候它在Dolphin HD和Firefox中工作,但我安装了更新,并且一段时间它停止了工作。

我在三星Galaxy SII(和.2.3)和Motorolla Milestone(和。2.1)上得到了相同的行为

2 个答案:

答案 0 :(得分:0)

原来是天气问题..很棒。

答案 1 :(得分:0)

转到Android SDK Manager并安装“Google API”

然后在Android Manifest中授予权限:

  android.permission.ACCESS_FINE_LOCATION
  android.permission.ACCESS_LOCATION_EXTRA_COMMANDS
  android.permission.ACCESS_COARSE_LOCATION
  android.permission.INTERNET

然后“运行”应用程序