Google Map API v2 步步為營(一)

來源:互聯網
上載者:User

官方文檔:https://developers.google.com/maps/documentation/android/start?hl=zh-CN

先Google後百度。使用google的api基本上按照官網來就好了,開發過程中遇到各種各樣的問題,其實仔細看官方文 都能找到解決方案的。這篇文主要是讓自己回顧總結一下。

Google Map API v2 相對v1變化了不少,千萬別拿著v1的攻略做v2。

 

step1  準備工作:

開啟Android SDK Manager,拖到最底下找到Extras檔案夾,展開,找到Google Play services,安裝。

Google Play services 將安裝到android SDK path下,我的目錄是~/develop/android-sdk-linux/extras/google/google_play_services/

我用的是API 15(4.0.3),到對應的目錄下展開,安裝Google APIs。

File > Import,  選擇Android > Existing Android Code into Workspace,找到

~/develop/android-sdk-linux/extras/google/google_play_services/libproject/google-play-services_lib/。

匯入之後在eclipse裡就能看到google-play-services_lib工程,如果eclipse裡設定了build automatically,就會自動編譯,要確保gen目錄下有產生com.google.android.gms這個包,否則後面的步驟會報錯。

在左邊的Package Expolorer視窗中找到自己的project,滑鼠右鍵,選擇Properties,左邊導覽列選Android,右邊子視窗裡找到Library,點Add,開啟project selection視窗,選擇google-play-services_lib,點Ok。

 

 加入後

點OK。

回到工作區,包目錄下可以看到多了兩個dependence的包

手機上需要安裝Google服務包(com.google.android.gms.apk)和Google Play Store(com.android.vending.apk)。

我沒裝google服務的framework,play store其實是用不了的,但是並不影響Google Map的使用。

如果使用模擬器,建立AVD的時候 target選擇對應API level的Google APIs就行了。

準備工作結束。

 

step 2 申請KEY

使用google的東西都必須申請一個KEY,這個KEY是和 APK的包名 及 打apk包時所用的認證 綁定的。

eclipse->Help->Install New Software,點Add,Name填寫Keytool,Loction填http://www.keytool.sourceforge.net/update ,安裝完成重啟eclipse,功能表列上多了Keytool菜單。

調試階段通過eclipse的run和debug打包的apk,都是使用預設的debug認證,這個認證的位置在home目錄的.android目錄下。

eclipse->Keytool->Open keystore,檔案路徑輸入/home/使用者名稱/.android/debug.keystore,密碼是debug認證的預設密碼android

開啟後視窗底部出現keytool視窗,列出剛剛選擇的keystore,展開,雙擊開啟androiddebugkey,找到SHA1 Fingerprint 複製下來。

也可以通過命令列查看key,keytool的命令列操作參考http://docs.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html

用gmail帳號登陸https://code.google.com/apis/console/?noredirect,建立一個project,左邊導航視窗中選擇Services,第一次載入可能會比較慢。

載入完後,右邊視窗會出現google提供的所有服務,找到Google Maps Android API v2,把後面的trigger設定成ON,然後出現的各種協議選擇accept。

導航視窗中選擇API Access。點擊按鈕Create Android Key,快顯視窗中填寫 “SHA1;包名”,create成功,返回API Access視窗就能看到Key for Android apps,把API key欄的一串字元複製下來。

 

step 3 可以開始codding了

回到eclipse,開啟AndroidManifest.xml,在<manifest>根節點中設定地圖訪問許可

 

com.xxx.xxx是包名,注意這兩句要加在<application></application>外面

其他需要的許可



申明要使用OpenGL ES,這一項是為了讓不支援OpenGL的機器訪問play store的時候略過這個apk。不寫這一項也不影響調試。

在<application></application>節點中增加兩個中繼資料:

         

res/values/config.xml

    上一步中複製出來的API KEY    

GOOGLE_MAP_API_KEY 的值就是step 2.3中申請的key。

 

layout/map.xml

                                                                                      

重點在7~11行,v2的地圖是用Fragment來顯示的

13~31行是兩個用於調試的textview,顯示標記所在的經緯度,及當前位置經緯度。

 

MapsActivity.java

先給一個簡化版

  MapsActivity  

OK,run一下

 本篇結束。中mark和地址擷取需要額外的代碼,下一篇進階篇中再繼續整理。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.