自己在使用Android Maps API 開發地圖應用程式時遇到的問題,以及解決的辦法

來源:互聯網
上載者:User

     最近幾天在學習如何將Google地圖應用在android的開發程式中,確實遇到了一些問題,同時也由於我的大意,走了一些彎路。下面,我談談,我的一些想法和感受:

     1.在android SDK中預裝的add-on中提供了一個Map 擴充庫com.google.android.maps,利用它就可以在android的應用程式中加上強大的地圖功能了。它位於F:/android-sdk-windows/add-ons/google_apis-7_r01/libs(也就是你的SDK的安裝路徑下面,這裡只是一個例子,我把它安裝在了F盤下面)。不過在使用Android Maps API功能之前,你還需要申請一個Android Maps API Key。

   2.申請一個Android Maps API Key 

對於這個,網上有很多解決的辦法,我也曾試著用了一下,但是在取得debug.keystore的MD5值的時候,有些麻煩,而且有時候會 出現很多錯誤,不用也罷。以下是我解決的步驟:

        1)找到你的debug.keystore檔案所在的路徑。

          認證的一般路徑為:開啟eclipse,選擇Windows———>Preference———>Android———>Build,其中Default debug                    keystore的值便是debug.keystore的路徑,當然別的途徑也可以得到,這裡就不提了,因為這就是捷徑,有捷徑幹嘛不用?

        2)取得debug.keystore的MD5值

         首先在DOS下進入debug.keystore檔案所在的路徑,上面的一步已經得到,然後執行命令:

         keytool -list -keystore debug.keystore(這個命令和網上說的解決辦法不太一樣,但簡單了很多,而且也不容易出錯)

        這時可能會提示你輸入密碼,這裡輸入預設的密碼“android”,即可取得MD5的值

       3)擷取Maps API Key

      開啟瀏覽器,輸入網址:http://code.google.com/intl/zh-CN/android/add-ons/google-apis/maps-api-signup.html(當           然,網上很多,也是這樣乾的,但是他們的網址似乎都有一些問題,書上的有些也不對,這是自己通過實踐,得出的這樣的網址,絕對         沒有問 題)。當然,前提是你必須有一個google賬戶,如果沒有,可以臨時註冊一個。然後,開啟google頁面,輸入code,一步步的尋找,也可以找到,最終就會得到我一開始寫的那個網址。(我建議大家還是這麼做比較好,吃現成的東西,永遠不會學到東西,而且也不會記得很牢,所以,你還是按我說的一步步找就可以了)。在開啟的頁面上,輸入你在步驟2裡得到的MD5認證指紋,勾選同意協議,按下“Generate API Key”按鈕,即可得到我         們申請到的 API Key

      4)在main.xml設定檔裡添加如下的代碼:

               <com.google.android.maps.MapView

                 android:id="@+id/MapView01"

                 android:layout_width="fill_parent"

                 android:layout_height="fill_parent"

                 android:apiKey="0VCtgYqXDXHfzETwYIVNs-4IHkt8phKbBmhv2Vg"(注意這裡要添的就是我們剛剛申請得到的Maps API Key,我這裡添的就是我得到的Key值)

 />

    5)同時我們也要在AndroidManifest.xml添加如下幾行代碼:

        在 <application/>前面添加如下代碼:

         <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>

         <uses-permission android:name="android.permission.INTERNET"/>

       這都是一些使用者的許可權,具體的你可以去androidAPI裡去查,它裡面已經給我們說的很清楚了。

     同時,在<application/>裡面添加如下代碼:

     <uses-library android:name="com.google.android.maps"/>(使用者庫,記住,我們使用的是Google公司的地圖,所以要在這下面找,而這些在android的SDK裡面是沒有的)

     以上,就是我在學習使用Android Maps API 開發地圖應用程式的時候的一些解決辦法,藉助了SDK文檔,也藉助了網上的一些資源,當然也有不少是通過看書學到的。

     下面我說說我遇到的問題以及錯誤的原因:

     1>按照如上步驟,我在擷取取得debug.keystore的MD5值時候,很容易,也很快就擷取了,但在擷取Key值的時候,由於我的大意,擷取的API Key其實是不對的,導致程式在模擬器上啟動並執行時候,會顯示一些個灰格子,而不是我所希望看到的地圖,這就是由於你的Map API Key值錯誤的原因導致的;

     2>對於Android SDK2.1或者以後的開發,我建議用:http://code.google.com/intl/zh-CN/android/add-ons/google-apis/maps-api-signup.html這個網址去擷取Maps API Key,否則會出現一些問題。我就是因為一開始,沒有使用上面的網址,導致Map API Key的取值錯誤,從而效果出不來。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.