Be creative, write anything.

手機離線地圖製作 (Android)

沒有留言
android offline maps

出國自助旅行,最重要的小工具之一,無非是地圖配合上 GPS 定位了。很容易知道自己在哪裡,比較不會迷路走錯路。不透過導航系統,看著地圖位置,周遭環境的道路標示,以及自己方向感,靠著雙腳成功找到想去的興趣點,總是有所成就感。

前提是,手機的地圖只有網路版本,必須隨時隨地要有網路漫遊才行。近幾次海外出遊自由旅行,因沒有需求要一直關注 LINE 或是 Facebook 打卡,都沒有特別買定額上網 Sim 卡,或是承租上網 Wifi 機器。網路地圖不能隨時隨地的使用。

既然沒有網路,何不就在手機上,製作一份專屬於自己的旅遊景點地圖呢?上頭標記有興趣的興趣點,以及這次旅行計畫要去的地區地圖,重點是不需要網路也能存取。

以下是透過 Mobile Atlas Creator (MOBAC) 在 Windows 電腦上製作地圖檔案後,使用 Android 上的 Locus Map 這套 App 來瀏覽該地圖檔案,最後將在 My Maps 所建立的興趣點,匯入到 Locus Map 中,完成一份離線版本的旅遊景點地圖。

My Maps

這是 Google 所提供的服務,在地圖上加入圖示的標記功能。可以在 Google maps 上加入圖層,各圖層可以加入有興趣的興趣點,這些興趣點標示好記的名稱,設定有意義的圖示。當然也可以加入線、區域、甚至導航資訊。

依稀記得以前免費版本只能加入三個圖層,現在似乎圖層無上限的樣子。以前自訂圖示也要收費,現在則是完全免費…。功能強大,非常適合整理旅行要去的興趣點。

興趣點尋找方式很簡單,可以搜尋別人已經建立好的 My Maps,或者參考他人的旅遊遊記,把遊記提到的有興趣的景點(興趣點),通通加入到 My Maps 中,在這樣的過程中,讓自己知道有哪些興趣點,以及各個興趣點的位置,方便之後規劃每日的行程。

完成住宿訂房後,也要把飯店位置加入,住宿地點附近的周遭設施也應一併加入,例如超商、超市或是百貨公司等,甚至是到日本採買的藥妝店位置…。此外旅行中重要的交通設施或是要朝聖的餐廳店鋪,也都可以加入這份 My Maps 中。

任何只要在行程規劃時,有興趣的興趣點應該都要加入,興趣點不嫌少。特別是離線地圖的製作,能先準備好的興趣點就先加入。

My maps 製作範例

最近去京都所製作興趣點地圖,powered by My Maps

在最後出發旅行前,也是最終的 My Maps 版本完成時,使用功能「匯出成 KML」「Export to KML」,將該 KML 下載並儲存到手機中,待會讓 Locus 匯入使用。注意:沒有網路的情況下,請不要勾選網路同步 KML。

Export KML

輸出 KML,選取想要輸出的圖層

Mobile Atlas Creator

使用 MOBAC 建立離線 Google maps 地圖,乃是採用圖片進行儲存,相對於其它使用向量資料儲存資訊地圖,MOBAC 所建立的離線圖資檔案容量會特別大。為了減少圖資檔案大小,需辛苦手動的設定地圖區域,以及地圖縮放級數。若手機空間夠大,是可以粗略選取地圖區域,選取所有級數的地圖製作。

先前往官方網站下載 MOBAC,以下使用 2.0.0 beta 1 做為操作範例。

由於 MOBAC 預設沒有 Google Maps 的地圖來源,因此在第一次開啟之前,要先設定自定義地圖來源,從 Google Maps 撈地圖資料的設定。首先先從 Gist Github 下載 Google Maps 地圖來源設定檔,並複製到 MOBAC 資料夾中 /mapsources/google.xml。或者自行建立該檔案,內容填入以下設定,其中 hl=zh-TW 表示地圖語言設定:

<customMapSource>
   <name>Google Map</name>
   <minZoom>0</minZoom>
   <maxZoom>20</maxZoom>
   <tileType>PNG</tileType>
   <tileUpdate>IfNoneMatch</tileUpdate>
   <url>http://mt{$serverpart}.google.com/vt/lyrs=m@176103410&amp;hl=zh-TW&amp;x={$x}&amp;y={$y}&amp;z={$z}&amp;s=Galileo&amp;scale=1</url>
   <serverParts>0 1 2 3</serverParts>
</customMapSource>

第一次開啟時,需要先新增地圖冊,其類型選擇 Big Planet Tracks SQLite。之後可以在 Menu > 地圖冊 > 新增地圖冊,新增其它的地圖冊,來新增其他類型的地圖冊。

選擇地圖冊類型

選擇地圖冊類型,使用 Big Planet Tracks SQLite

接下來設定操作介面,右側 Tools > Left Panel > Expand 可以調整左側操作視窗的大小,先調整合適的視窗大小,避免操作選項隱藏。接下來選擇地圖源,選擇所建立的地圖源 Google Maps。

設定操作視窗以及地圖源

設定操作視窗以及地圖源

透過 Menu > Selection 工具來選取欲製作離線地圖的區域,建立使用多邊形來選擇,這樣可以減少不必要的區域,降低離線地圖的檔案大小。雖然有點辛苦,但為了手機能多拍幾張照片,多錄幾分的影片,只好慢慢得選取了。(註:滑鼠左鍵編輯選取區域,按住滑鼠右鍵可移動地圖。)

設定縮放比例,數字越大表示地圖越精細,相對的所需要的檔案空間也會變大。可以使用滑鼠滾輪縮放地圖,來評估需要到第幾層的地圖。level 20 最為精細,但需要大量的儲存空間。個人覺得 level 16, 17 的地圖已經足夠使用了,且所做出來的地圖檔案大小也不會太大。

日本京都車站,在不同 level 所呈現的地圖

這是日本京都車站,在不同 level 所呈現的地圖

最後點選新建地圖冊,完成選取區域的地圖冊。重複以上步驟,可以建立多個地圖冊到同一個地圖檔案中。最後點擊開啟下載地圖冊,隨著網路速度以及地圖冊區域大小,花費一段時間下載地圖。

離線地圖建立步驟示意圖

離線地圖建立步驟

完成的檔案可以在 MOBAC 資料夾中 /atlases/ 中找到,附檔名為 sqlitedb。記得將該離線地圖檔案複製一份到手機中。

Locus Map (Android)

手機上瀏覽離線地圖的 App,推薦使用 Locus Maps 來瀏覽,該 App 分為免費版本以及收費版本,主要差異在於廣告以及額外功能。我們需要的自訂離線地圖瀏覽,以及顯示自定義的興趣點,Locus Maps 免費版都可以使用該些功能。以下使用 Locus Maps Pro 版本進行操作。

首先進入功能表,選擇地圖,設定地圖來源,從原本網路地圖,改成檔案系統中的地圖檔案。

功能表

功能表頁面

選擇離線地圖

選擇使用 MOBAC 所建立的離線地圖

接著在功能表中,選擇航點,在航點列表中,建立資料夾,匯入 My Maps 所匯出的 KML 興趣點資料。

航點新增資料夾

航點列表中,新增資料夾

該資料夾匯入興趣點

該資料夾匯入興趣點

最後測試,檢查興趣點所在的地圖是否完整,以及縮放等級是否能符合需求。若發現不足,再回到 MOBAC 中編輯離線地圖冊,重新下載建立離線地圖。

後記

此離線地圖沒有辦法導航,沒有辦法搜尋,也不能查詢規劃路線,使用不像網路版的 Google Maps 如此方便。雖說有如此限制與不便,但對於沒有辦法隨時上網的我來說,能夠知道自己在哪裡,方向應該怎麼走,已經足夠使用,其它的就靠當地的資訊以及之前做的功課了。

地圖使用方式不應隨時盯著地圖螢幕,時時確認地圖上的自己,而應是參考地圖位置,看著周圍景色以及當地指標,腦中的所建立的方向,體驗著陌生環境景色行走。尤其是在沒有辦法定位的地下或是建築內,善用自己的方向感以及週邊的指引,帶領前往想去的方向吧。

享受找路以及走錯路的過程,是自助旅行的樂趣之一呢。

沒有留言: