前言
先前筆者有稍微介紹了Mapsforge,不知道大家目前有沒對於Mapsforge產生了一點興趣呢? 這次筆者打算用一個比較不抽象的方式來教大家Mapsforge要如何使用~ 本次專案的程式碼將會發佈在 https://github.com/lienching/MapTracker
前置準備Preparation
-
使用者所需具備能力
- 基本的Java概念
- 基本的Android APP開發概念
- 熱愛開發的心
-
專案所需API(mapsforge系列載點、androidsvg載點、kXML2載點)
- mapsforge-map
- mapsforge-core
- mapsforge-map-android
- mapsforge-map-reader
- androidsvg
- kXML2
AndroidManifest設置Setup
權限部分(詳細請參考這裡)
<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_NETWORK_STATE"/> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.WAKE_LOCK"/>
這個教學將會有6個部分,分別為
- MainActivity:主程序
- NowLocationLayout:定位圖層
- EnvCheck:環境檢查,用於檢查圖資是否存在與是否需要更新
- MapDownloadManager:用於圖資下載
- LayerAdder:動態圖層
- MapUpdateManager:用於圖資更新
package lien.ching.maptracker; import android.os.Environment; /** * Created by lienching on 11/27/15. */ public class Constant { public static final String PATH_MAPSFORGE = Environment.getExternalStorageDirectory().toString() + "/mapsforge/maps/"; public static final String PATH_WORLDMAP = PATH_MAPSFORGE + "world/world-lowres-0-7.map"; public static final String PATH_TAIWANMAP = PATH_MAPSFORGE + "asia/taiwan.map"; }
沒有留言:
張貼留言