1. 程式人生 > >Android與HTML5中的地理資訊定位,Android+Html5定位原理

Android與HTML5中的地理資訊定位,Android+Html5定位原理

在Android客戶端,地理資訊定位主要有GPS定位、基站定位、WIFI定位、A-GPS定位,各自的基本情況差不多是這個樣子的:

一、GPS定位:Global Positioning System,全球定位系統

原理:

   基於衛星的定位,只要裝置有GPS定位模組,且處於開啟狀態,就能正常獲取定位資訊

優點:

   1、最簡單的定位方式,且精度也是最高的

   2、基於衛星的定位,就算沒有網路,定位功能也能用

缺點:

   1、必須要保證手機有GPS定位模組,且處於開啟狀態

   2、比較耗電

   3、從GPS初次啟動到初次獲取地理資訊資料,比較耗時

   4、室內定位功能不行

二、基站定位(網路定位的一種)

原理:

   大致是根據手機的通訊網路,採集其歸屬的基站資訊,再結合一定的網路服務,進一步得到基站的經緯度,較低精度的獲得手機裝置的地理位置資訊

優點:

   1、只要手機有訊號,網路正常,室內室外都能用

缺點:

   1、精度較低

三、WIFI定位(網路定位的一種)

原理:

   類似基站定位,主要是採集當前手機裝置的WIFI資訊,結合一定的網路定位服務,獲取WIFI所在地的經緯度,進一步得到手機裝置d的地理位置資訊

優點:

   1、定位快

   2、耗電量小

缺點:

   1、精度相對GPS較低

四、A-GPS定位

原理:

   其實依舊是GPS定位,只是採用基站資訊對GPS定位功能進行輔助,同時還能對GPS定位結果進行適當修正,相比傳統的GPS定位而言,速度更快、精度也更高。

HTML5 Geolocation的定位方式,主要取決於瀏覽器所在的硬體裝置,大致有這些定位方式:IP地址定位、GPS定位、WIFI定位、基站定位、以及使用者自定義位置。各種定位方式的優缺點與Android下差不多,都是在功耗、精度、可用性上的不同。

一般情況下,Geolocation API都是採用組合定位,但設定enableHighAcuracy屬性為true後,會優先採用GPS進行更高精度的定位。

使用HTML5的Geolocation API進行定位,通常需要獲得使用者的手動確認許可,否則該定位功能不可用。比如在微信客戶端中內嵌的嘀嘀打車,進去以後會彈出一個類似這樣的確認框:“嘀嘀打車要使用你的地理位置,是否允許?”,使用者選擇了“允許”,則定位功能開啟,服務正常使用,但如果使用者“拒絕”,那麼這個功能直接不能用了,即便第二次再開啟,或者強刷頁面,該域下的HTML5定位功能依然不可用。

轉載Android與HTML5中的地理資訊定位