Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android上的javascript geolocation不起作用大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发一个依赖于移动用户的地理位置数据的网站.我这样做是典型的方式通过:
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);
}

即使我切换了地理位置方法的顺序,这一定会导致errorOnLocate函数中的[object PositionError]失败.

这是一个HTC Hero与Android 2.1使用任何浏览器内置.我的gps是,我已经指示浏览器允许网站查看我的位置. Google地图本机应用程序上的“位置”功能在手机上接收到我的位置

更进一步,如果我访问我的网站使用FireFox 3.5在我的个人电脑上,它会找到我的位置正确(我相信它使用ip和ap数据点的组合).无论哪种方式,它都使用相同的JavaScript.

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

解决方法

这是从WebView还是从Android浏览器应用程序访问?如果从WebView,您可能需要通过Java调用启用地理定位.参见 WebView reference.

否则,我不确定你的JS是什么问题,但是这里的HTML JS,我知道与Android浏览器一起使用:

<!DOCTYPE html> 
<html> 
<head> 
  <script type="text/javascript"> 
function watchLOCATIOn(successCallBACk,errorCallBACk) {
  successCallBACk = successCallBACk || function(){};
  errorCallBACk = errorCallBACk || function(){};

  // Try HTML5-spec geoLOCATIOn.
  var geoLOCATIOn = navigator.geoLOCATIOn;

  if (geoLOCATIOn) {
    // We have a real geoLOCATIOn service.
    try {
      function handlesuccess(position) {
        successCallBACk(position.coords);
      }

      geoLOCATIOn.watchPosition(handlesuccess,errorCallBACk,{
        enableHighAccuracy: true,maximumAge: 5000 // 5 sec.
      });
    } catch (err) {
      errorCallBACk();
    }
  } else {
    errorCallBACk();
  }
}

function init() {
  watchLOCATIOn(function(coords) {
    document.getElementById('test').innerHTML = 'coords: ' + coords.latitude + ',' + coords.longitude;
  },function() {
    document.getElementById('test').innerHTML = 'error';
  });
}
  </script> 
</head> 

<body onload="init()"> 
  <div id="test">Loading...</div> 
</body> 
</html>

大佬总结

以上是大佬教程为你收集整理的android上的javascript geolocation不起作用全部内容,希望文章能够帮你解决android上的javascript geolocation不起作用所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。