当前位置:  开发笔记 > 编程语言 > 正文

android上的javascript geolocation不起作用

如何解决《android上的javascriptgeolocation不起作用》经验,为你挑选了1个好方法。

我正在开发一个依赖于拉动移动用户的地理位置数据的网站.我通过以下方式做到这一点:

function initialize() {
   if(window.google && google.gears) {
        var geo = google.gears.factory.create('beta.geolocation');
        geo.getCurrentPosition(useLocation, errorOnLocate);
   }
   else if(navigator.geolocation) {
       navigator.geolocation.getCurrentPosition(useLocation, errorOnLocate);
   }
   else {
       alert("no geo found");
   }
}

function errorOnLocate(message)
{
    alert(message);
    zoomTo(-34.397, 150.644);
}

即使我切换地理位置方法顺序,这始终会在[object PositionError]中输入errorOnLocate函数.

这是一个使用Android 2.1的HTC Hero使用内置的任何浏览器.我的gps已开启,我已指示浏览器允许网站查看我的位置.手机上的谷歌地图本机应用程序中的"位置"功能可以很好地获取我的位置

如果我在我的个人计算机上使用FireFox 3.5访问我的网站,它将更正确地找到我的位置.(我相信它使用了ip和ap数据点的组合).无论哪种方式,它使用相同的JavaScript.

编辑:这是浏览器中的html/js,而不是本机应用程序.此外,确切的错误消息是"最后一个位置提供程序已被禁用"



1> Roman Nurik..:

这是从WebViewAndroid浏览器应用程序访问还是从Android浏览器访问?如果来自a WebView,您可能需要通过Java调用启用地理定位.请参阅WebView参考.

否则,我不确定你的JS究竟出了什么问题,但我知道HTML + JS与Android浏览器配合使用:

 
 
 
   
 

 
  
Loading...


奇怪的是,我的Nexus One几乎立刻得到了回复.也许这是设备的问题,而不是代码?我尝试使用模拟器并通过DDMS发送模拟位置数据.
推荐阅读
mobiledu2402852413
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有