2015年5月6日 星期三

OSMDROID: Introduction



簡介  Introduction

OSMDROID是一個Android的函式庫,主要目的是要提供與OpenStreetMap(簡稱OSM)互動的工具,裡面包含了:


MapView

    提供一個類似Android中MapView的環境,讓OSM的圖資可以顯示在Android中,並可以做拖拉,縮放,圖資來源設定等動作。
MapController

    這是個設定工具,也就是對於MapView的Zoom Level與起始位置做設定。
TileProvider

    TileProvider主要是負責MapView圖資的部分,OSMDROID本身的MapView是需要給他一個圖資來源才能運作的,而提供圖資這個部分就是TileProvider的工作。
Overlay

    Overlay照字面上就是圖層,在OSMDROID中底層是MapView,但如果我們需要去新增一些事件, 要繪製矩形區域, 放置指標等行為就會需要去新增一個圖層定義其行為模式。



安裝  Install

  1. 使用Android Studio

    Android Studio真的是個很棒的工具,因為在安裝Library上面真的非常的方便,像OSMDROID你只需要在專案中建立一個libs的資料夾,然後把osmdroid的jar檔跟slf4j-android(載點)放進去就可以囉
    p.s 如果你發現你放進去了但是卻不能使用的話,請檢查一下專案中的build.gradle中的dependencies大括號裡面有沒有 compile fileTree(dir: 'libs', include: ['*.jar']) 這行,如果沒有補上去之後Sync就會正常了。
  2. 使用Maven


    <dependency>
      <groupid>org.osmdroid</groupid>
      <artifactid>osmdroid-android</artifactid>
      <version>4.3</version>
    </dependency>
    


    <dependency>
        <groupid>org.slf4j</groupid>
        <artifactid>slf4j-android</artifactid>
        <version>1.6.1-RC1</version> 
    </dependency>
    

    放進Maven設定檔中就可以囉。
  3. 使用Eclipse

    OSMDROID的Jar檔跟slf4j-android(載點)下載好,之後
    對著專案點右鍵 內容(Properties) > Java Build Path > Add External JARs > 選擇剛下載的OSMDROID跟slf4j-android > 確定 這樣就完成囉。
最後記得別忘了在AndroidManifest.xml中把這幾行權限加進去喔
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />


下載  Download


    你們可以從(網址)取得最新版本(OSMDROID在Google Code上面也有上傳相關的檔案,但是版本到4.2就停止更新了)
當你進去的時候你會發現有三種不同的檔名,分別是:

  1. osmdroid-android-x.x-javadoc.jar

        這個裡面存放的是OSMDROID這個版本中的所有API的說明,解壓縮之後裡面會是個網站,點擊index.html之後你就會看到















    這個漂亮的網站囉~
  2. osmdroid-android-x.x-sources.jar

        這個檔案中存放的就是完整OSMDROID的原始碼,也就是可以讓你離線也能查閱原始碼喔,當然如果你喜歡線上版的你也可以參閱他們Github的專案
  3. osmdroid-android-x.x.jar

        這個就是我們要放在我們專案中的jar檔囉,裡面放了全部OSMDROID編譯過的檔案,讓我們可以在我們的程式中使用。

沒有留言:

張貼留言