Android調用Google Map

Google爲android的開發者提供了一套相當完善的地圖應用接口,開發者可以很方便的使用這些接口來做一些LBS應用程序。 

我所使用的開發環境是eclipse,另外再用ADT工具安裝Google Maps library組件(這個庫是Google APIs add-on的一部分,要確保開發環境裏已經安裝了這個庫)。 

具體調用 google map 的流程爲:網上申請Maps API Key=>創建一個MapActivity=>在地圖上添加自定義圖層 

一.如何獲得Maps API Key?

1.在命令行裏用keytool命令生成一個MD5 certificate fingerprint 

$ keytool -list -alias alias_name -keystore my-release-key.keystore

 

根據提示輸入密碼等信息,然後可以得到如下MD5 certificate fingerprint   

Certificate fingerprint (MD5): 94:1E:43:49:87:73:BB:E6:A6:88:D7:20:F1:8E:B5:98

只有獲得了這個MD5 certificate fingerprint纔可以在註冊頁面獲取key.

 

2.註冊Maps API Key

打開http://code.google. com/android/maps-api-signup.html 

 

在這個頁面輸入你的MD5 certificate fingerprint就可以獲取Maps API Key.這裏我們得到的key爲   

08dkmLW5o********PgzGDxT9mb1JKOoV3Rhrlw

 

二、創建一個MapActivity

1.在eclipse中創建一個名字爲HelloGoogleMaps的android工程。因爲我們要調用地圖API,所以在選擇Build Target的時候一定要選擇Google APIs。

2.編輯XML文件。

mail.xml 

  

android:apiKey即是我們剛纔申請得到的Maps Key,這裏一定不能出錯,否則可能會無法得到map tiles。

3.修改AndroidManifest.xml

 

因爲map tiles來自於google map server,所以我們需要加上

<uses-permission android:name="android.permission.INTERNET" /> 讓application可以訪問internet.

另外再application標籤下面需要添加<uses-library android:name="com.google.android.maps" /> 指明我們要用到google map的library。

4.創建一個繼承自MapActivity的類。

完成了以上步驟,運行程序就可以看到自己的activity可以顯示google map了。

 

三、添加自定義圖層

我們調用google map的目的是爲了在map上面顯示自己想顯示的內容,比如顯示用戶當前的位置(需要調用GPS) ,或是將某一個興趣點(Point Of Interest)在地圖上顯示出來等。這樣就需要在google map上面添加自定義的圖層了。 

1.創建一個繼承自ItemizedOverlay的class 

 

創建好了ZPoiItem類,回到HelloGoogleMaps類,添加變量

該變量用於控制地圖的,比如設置地圖中心點,設置地圖比例尺等。

然後在onCreate函數的末尾添加如下代碼:

 

至此已完成了在google map上添加自定義圖層。效果圖如下:

 

 

後記:值得一提的是,android的map軟件需要簽名以後才能發佈給其他手機,這個簽名過程用eclipse的GUI可以很方便的完成,右鍵工程根目錄選擇Android Tools->Export signed application package...,進入簽名設置界面,根據提示一步步完成簽名。用簽好名的.apk安裝到手機裏可以看到如上所示的結果。Google map的API非常豐富,開發者可以利用這些函數接口編寫各種各樣的LBS軟件或是其他基於地圖的應用軟件。Foursuqare就是一個不錯的調用google map的LBS軟件。

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章