[google api] 離線版 google map

要把原來線上版的google map改為離線版。
這個突然的需求真是把我搞昏了。

用想像(或嘴砲)的好像都很簡單,但實際執行起來真的很有難度。
我把架構拆解為3個部分:



1.圖資資料庫
2.地圖控制元件
3.web網頁

1.圖資資料庫:
手上並沒有任何現成的資料庫。
所以就把來源端指向google map的資料庫了。
老話一句,用想像的(或嘴砲)很簡單:阿就去把圖檔下載回來就好了阿!

好,去哪下?google當然沒有大門敞開直接地圖資料就讓你抓。
不過是有一些工具可以抓,像是gMapMaker,但抓下來的格式是mgm檔。
很好...似乎是只能餵給MGmap(手機的應用程式)來用。

嗯...資料來源搞不定。

2.地圖控制元件:
google map API只有提供線上的,頂多也只能抓到一個main.js檔。
但其他模組的js是動態連,詳細存放位置...不明,圖片存放位置....不明。

不過還是有高手把這些js檔都抓下來了,成為一個離線開發包。
(用firebug一個一個慢慢找找出來的...真是有耐心)
抓下來測試了一下基本的功能,似乎是可以(不過加入marker位置好像有很大的偏差)
但最重要的,沒有地圖檔阿!!這又回歸到了圖資資料庫的問題。

3.web網頁:
說來說去就是要放在web網頁上。
目前好像沒看過這樣做的(離線又是網頁),比較多都是開發AP做離線功能的。
至於AP要怎麼開發...目前沒有研究。


總結三項問題:
沒資料庫、元件半殘→使用不能。


當然,還是要找尋出路。
今日搞了一整天最後的想法是:使用Static Maps API。

操作了一下,其實功能還ok...
組合出一個網址就會產生圖片了。

所以解決方案是:
1.圖資資料庫:
寫個程式批次組出網址,餵給Static Maps API,然後抓圖。

2.地圖控制元件:
很單純,就根據檔名秀圖。

這樣似乎.........是可行的方案。
只是要看使用者(?)接不接受了...
較新的 較舊