針對不同手機系統的LBS地圖定位解決方案

傑克.陳發表於2015-01-07
原文:針對不同手機系統的LBS地圖定位解決方案

摘要:

針對目前的三種手機系統:Android安卓、S60塞班、IOS蘋果,做出的三種不同的手機地圖應用解決方案。

查閱了多數地圖API對手機的支援情況,發現並沒有一家能完全覆蓋到這三個平臺。

 

目前,百度地圖API的移動版,即SDK版本,只支援安卓系統一種。那麼,如果我要開發蘋果系統上的收費應用,或者塞班上的手機應用時,應該如何用地圖API來實現呢?

我分別總結了三種情況的解決方案。

—————————————————-

 

Android安卓手機系統

實現方案

百度地圖API移動版,即手機SDK

 

方案說明

SDK版本利用GPSwifi和基站三種定位方式的結合。

 

目前系統自帶的網路定位服務精度低,且服務不穩定、精度低,並且從未來的趨勢看,基站定位是不可控的(移動公司隨時可能更改基站編號以壟斷定位服務),而wifi定位則不然,它是一種精度更高、不受管制的定位方法。國內其它使用wifi定位的地圖軟體,wifi定位基本不可用。

 

百度的定位服務量化指標優秀,網路介面返回速度快(達到服務端每次定位響應時間50毫秒以內),精度280米,覆蓋率96%,在國內處於一枝獨秀的地位。

 

使用者需注意,如果在API中使用此功能,必須註冊GPS和網路的使用許可權。在獲取使用者位置時,優先使用GPS進行定位;如果GPS定位沒有開啟或者沒有可用位置資訊,則判斷是否通過wifi連線,如果是,則通過請求百度網路服務,根據wifi熱點位置定位;如果否,則通過百度網路服務根據基站資訊進行定位。

 

開發文件

SDK開發指南網址:

http://dev.baidu.com/wiki/imap/index.php?title=Android%E5%B9%B3%E5%8F%B0/%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97 

 

SDK類參考:

http://dev.baidu.com/wiki/imap/index.php?title=Android%E5%B9%B3%E5%8F%B0/%E7%B1%BB%E5%8F%82%E8%80%83 

 

=================================

S60塞班手機系統

實現方案

1、靜態圖API + S60定位外掛  

2、百度地圖API + S60定位外掛

 

靜態圖使用說明

靜態圖服務是百度地圖API Web服務集合中的一種,它根據所設定的引數,通過標準HTTP協議,返回相應的地圖圖片。請注意,您無須執行任何“特殊”操作便可在網頁上顯示此圖片。不需要JavaScript。只需構造一個URL網址,並將其放入 <img> 標記中。您就可以將地圖放在網頁上。

 

使用者可控制地圖圖片的長寬、中心點、地圖級別;標註一個或多個標註;標註引數可以是百度經緯度,也可以是地標名稱。

 

百度地圖API使用說明

百度地圖API 適用於任何手機瀏覽器上。只要是基於S60塞班手機瀏覽器開發的地圖應用,都可以使用百度地圖API。使用者可採取APP + HTML5的方式進行LBS應用的開發。支援多點觸控。

 

另外,S60塞班系統上,可以使用 S60定位外掛。定位外掛原理與手機SDK定位原理一致。

定位外掛分為兩類,每個客戶端只能使用其中的一種。

1)服務外掛(提供定位服務,順便也會採集定位資料)

2)採集外掛(僅進行定位採集,客戶端沒有定位需求)

 

開發文件

靜態圖開發指南網址:

http://dev.baidu.com/wiki/map/index.php?title=%E9%9D%99%E6%80%81%E5%9B%BEAPI 

 

API開發指南網址:

http://dev.baidu.com/wiki/map/index.php?title=%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97 

補充:

百度S60的定位外掛,有兩個介面。一個是CgeoLocation,另一個是CellDC。

該定位服務可返回如下位置資訊:

定位服務支援返回百度座標系的座標(如果要疊加百度地圖底圖,必須使用該座標系)和國測局座標,WGS84座標根據國家法規,暫時不予支援。

定位服務支援返回多級地址,但是各個國家不一樣,最多劃分為9級,每個級別為“街道”、“城市”、“省”等。我們規定這些元素分別為

street_number:          
    //門牌號碼

street:                
               //道路名

district:              
                //區縣

city:               
                    //城市

city_code:                           //城市程式碼

province:                     
//省份名稱

country:                               //國家

=================================

IOS蘋果手機系統

實現方案

1、靜態圖API + IOS系統的定位功能  

2、百度地圖API + IOS系統的定位功能

 

靜態圖使用說明

靜態圖服務是百度地圖API Web服務集合中的一種,它根據所設定的引數,通過標準HTTP協議,返回相應的地圖圖片。請注意,您無須執行任何“特殊”操作便可在網頁上顯示此圖片。不需要JavaScript。只需構造一個URL網址,並將其放入 <img> 標記中。您就可以將地圖放在網頁上。

 

使用者可控制地圖圖片的長寬、中心點、地圖級別;標註一個或多個標註;標註引數可以是百度經緯度,也可以是地標名稱。

 

地圖API使用說明

百度地圖API 適用於任何手機瀏覽器上。只要是基於IOS系統的手機瀏覽器開發的地圖應用,都可以使用百度地圖API。使用者可採取APP + HTML5的方式進行LBS應用的開發。

注意,IOS系統上只能使用IOS系統自帶的定位服務。

 

另外,針對IOS移動平臺,1.2版本APIiPhone4上可以展示出更高解析度的地圖。並且支援多點觸控。

 

開發文件

API開發指南網址:

http://dev.baidu.com/wiki/map/index.php?title=%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97 

 

靜態圖開發指南網址:

http://dev.baidu.com/wiki/map/index.php?title=%E9%9D%99%E6%80%81%E5%9B%BEAPI 

 


相關文章