首頁  >  文章  >  後端開發  >  手機Web端如何做到即時定位

手機Web端如何做到即時定位

WBOY
WBOY原創
2016-10-10 11:56:182329瀏覽

微信公眾號即時取得快遞員的位置,有沒有什麼好的方案或介面

回覆內容:

微信公眾號即時取得快遞員的位置,有沒有什麼好的方案或介面

Html5本身就可以取得到地理位置(WGS-84)

但是前提是快遞員一直打開那個網頁不黑屏,黑屏之後網頁中的腳本會被暫停(所以GPS也會被停止)。

公眾號只會在進入主介面時,會去讀取座標並上傳到後台。進到Web頁面之後,權限會縮小的和HTML一樣。
公眾號的JS API不會持續的取得座標,除非setInterval不停去取,黑屏之後一樣會停止JS。

如果需要即時上傳快遞員的座標到伺服器,只有APP這條路。


Web端取得地理位置方法:navigator.geolocation 有三個函數:

<code>void getCurrentPosition(onSuccess,onError,options);
//获取用户当前位置

int watchCurrentPosition(onSuccess,onError,options);
//持续获取当前用户位置

void clearWatch(watchId);
//watchId 为watchCurrentPosition返回的值
//取消监控</code>
<code>
function getLocation(){
   var options={
       enableHighAccuracy:true, 
       maximumAge:1000
   }
   if(navigator.geolocation){
       //浏览器支持geolocation
       navigator.geolocation.watchCurrentPosition(onSuccess,onError,options);
   }else{
       //浏览器不支持geolocation
   }
}

//成功时
function onSuccess(position){
   //返回用户位置
   //经度
   var longitude =position.coords.longitude;
   //纬度
   var latitude = position.coords.latitude;

}

//失败时
function onError(error){
   switch(error.code){
       case 1:
       alert("位置服务被拒绝");
       break;

       case 2:
       alert("暂时获取不到位置信息");
       break;

       case 3:
       alert("获取信息超时");
       break;

       case 4:
        alert("未知错误");
       break;
   }
}


//开始获得
getLocation();</code>

WGS-84如何轉換成騰訊/百度等座標請移步 https://www.oschina.net/code/...

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn