1. 程式人生 > >微信企業號開發:微信考勤百度地圖定位,錯誤修正二

微信企業號開發:微信考勤百度地圖定位,錯誤修正二

ipp ons AC 信息 解釋 企業號 android bsp ner

在之前的博客中微信企業號開發:微信考勤百度地圖定位,錯誤修正介紹了一種修正百度地圖錯誤的方法,就是使用高德地圖修正。但經過近一年。近兩千人的使用發現,在百度地圖出現定位錯誤時,通過HTML5獲取的經緯度都是空,也就是獲取不到經緯度。因此能夠採用HTML5獲取的經緯度來糾正百度地圖的錯誤。假設HTML5獲取的經緯度為空。百度地圖獲取的位置肯定是錯誤的。但這樣的情況在測試時,非常少出現,但假設大量使用。出現的頻率就非常高了。


但假設出現HTML5獲取經緯度失敗的情況怎樣處理呢?也就是出現讀取經緯度失敗時怎樣處理?

 function getLocation() { 
        if (navigator.geolocation) {
            navigator.geolocation.getCurrentPosition(showPosition, onError, optionsGps);
        }
        else {
            alertInfo(‘您的手機如今還不支持定位功能。‘);
        }     
    }
    function onError(error) {      
        switch (error.code) {
            case 1:
                $("#address").val("位置服務被拒絕,請確認打開了GPS。假設打開了GPS,請刷新重試。

"); break; case 2: $("#address").val("臨時獲取不到位置信息,請刷新重試。

"); break; case 3: $("#address").val("獲取信息超時,請刷新重試。"); break; case 4: $("#address").val("未知錯誤,請刷新重試。"); break; } }


非常長一段時間。常常有同事告訴我微信考勤定位有問題,都是Android手機,蘋果手機沒有發現。

在定位有問題的手機中,各個品牌的手機都有。並且不是必現。有時出現,有時不出現,非常難找到詳細的原因,但由於考勤和工資掛鉤,又不能不解決。

怎樣處理?找先關的文檔,僅僅說了會出現上邊的幾種錯誤。詳細是什麽原因,沒有詳細的解釋,怎樣解決也沒有人給出答案。每次出現故障。我僅僅能讓他們退出微信,重新啟動手機等方法重試。有時能解決,有時不能解決,一直找不到原因,也沒有解決。

但我發現有時刷新又一次獲取就能夠得到了。忽然想明確了,既然不知道原因,為什麽要知道原因呢?再次自己主動獲取不能行了?

 function onError(error) {               
               switch(error.code){
                   case 1:                      
                       $("#address").val("位置服務被拒絕,請確認打開了GPS,假設打開了GPS。請刷新重試。");
                       break;
                   case 2:
                       $("#address").val("臨時獲取不到位置信息,請刷新重試。");
                       updateLocation();
                   break;
                   case 3:
                       $("#address").val("獲取信息超時,請刷新重試。");
                       updateLocation();
                   break;
                   case 4:
                       $("#address").val("未知錯誤。請刷新重試。");
                   break;
               }
           }
		    function updateLocation() {
        getLocation();       
    }


這樣改動了後,問題非常少了,實際中有時真的不必糾結為是否知道真正的原因,簡單粗暴的方法或許是最有效的。


微信企業號開發:微信考勤百度地圖定位,錯誤修正二