延伸內容
好像剛剛出了個不用JB的離線地圖叫zMap [URL="http://itunes.apple.com/app/id504320381?mt=8"]
超級用心的圖文解說.. >"<
非常好,連 Mac 也有 xGPS manager 下載範圍選定,也能夠直接傳送地圖。 iPad放大版效果更好。
最近在學,終於找到圖文並茂的教學,真是太棒了。
謝謝,學習了
這一篇,真是寫的太好了,謝謝!
建議本篇置頂 置頂需要更多閱讀次數, 我來幫忙頂一下.;-)
我前段時間去了london發現真的是很好用。 但是我喜歡在google地圖中的自定義一個地圖,就是My Maps, 然後把這些Marks放到iphone上是個問題。 後來查了一下。 發現有個荷蘭人總結了一些,講如何同步你自己創建的google地圖到你的iphone上。 http://www.arvandijk.nl/archives/300 看不懂的可以翻譯成英文。 前兩個方案需要你安裝兩個apps, 最後一個登入一個網站,輸入你的google賬戶(注意,雖然本輸入以後得到正確的資訊,也可以同步,但是這種方式還是不安全,因為我gmail警告我賬戶又在美國被登陸過,所以大家使用這個網站的時候三思),然後這個網站會把你創建的地圖列表顯示出來,然後點擊view maps,就會打開iphone自帶的地圖程式,然後你就可以看到你所做的標記了,不過這個方法你還是得需要手動添加這些marks到你的bookmarks. 但還是節省了相當多的時間,畢竟在iphone上輸入搜尋地圖沒有在電腦上操作來得方便。 這邊還有一個更詳細的圖文教學。 http://www.chuckegg.com/use-google-my-maps-on-iphone-and-smartphone-with-poi-markers-pictures/
建議本篇置頂
剛買了iphone,這個指導實在是太有用了,多謝您的分享。
兩點糾正。 1. GPS 沒有所謂衛星信號越弱,定位範圍變大的問題。這是因為收到的衛星數目不夠最低需求的關係。一般需要4顆衛星的信號去定位,信號再弱,只要收得到,就可以定位。但是若接收到的數目少於4,誤差就會較大,或甚至不能定位。 如果是GPS手機,當衛星信號收不到不能定位時,上面的GPS軟體會改用手機的蜂巢式電話網路的發射站信號強度大小來計算位置,這時誤差更大,可以到2、3公里。 2. 手機(包括 iPhone)由於天線設計上的限制(想想,要把手機天線、GPS天線、甚至還有 Blue Tooth 天線、WiFi天線全做到一個機體裡),有時候信號不好要做起始定位時要花很多時間去搜索衛星信號來挑出最合適的幾個。這時手機的 GPS 會使用 Assisted 模式(所以手機的GPS叫做 AGPS),經由手機網路或者TCP/IP網路來傳送起始的位置,幫助手機上的GPS做起始定位。 前面說的用 WiFi 來定位,不是很正確。WiFi 並不能定位,而是 WiFi 用來傳送起始資料。
太強ㄌ!!真是感謝這麼仔細ㄉ教學~
離線狀態下使用iPhone地圖及衛星定位功能 – Part 4:衛星定位與地圖書簽 使用iPhone衛星定位功能了解自己所在位置 iPhone的GPS定位功能是使用衛星信號,並不需要上網,所以在離線狀態下亦可以使用GPS定位,只是當在離線狀態時,因為iPhone地圖內並沒有地圖資料,所以即使定到位在地圖畫面上亦看不到地圖位置,只會在空白畫面上顯示藍色定位點。但是當你按照上兩篇所介紹的方法將地圖緩存文件複製入iPhone之後,iPhone地圖程式內就有地圖資料,所以在離線狀態下用GPS定位時亦可以顯示出地圖。 使用iPhone GPS定位功能的操作方法相當簡單,開啟iPhone地圖後,如果iPhone接收到衛星信號,就會自動進行定位,如果iPhone沒有自動進行定位,可以點畫面左下角的定位按鈕指示系統執行定位。定位完成後所在位置會以藍點標示,如果iPhone接收到的衛星信號較弱時,會在定位點以外顯示藍色圓圈,表示定位可能會有偏差,而正確位置大約位於圓圈範圍之內,圓圈越大表示衛星信號越弱。 http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100623104014707.jpg?ib_____DqKXq4WJ6 iPhone 3GS有內置指南針,而指南針功能可以結合iPhone地圖與定位功能一齊使用。當定位完成後,再點多一次畫面左下角的定位按鈕,就可以啟動指南針,這個時候會見到藍色定位點前會出現探射燈狀的三角形,代表iPhone機頭所面向的方向。 使用iPhone GPS定位功能時,需要留意以下事項: 1. 衛星信號需要在露天地方才會被接收得到,有上蓋的地方信號可能會好弱,例如在大阪心齋橋這類有上蓋的步行街內,衛星信號一般接收得不太好。 2. 不知是不是iPhone GPS硬件的問題,很多時當你去到外地後,第一次開啟iPhone地圖時都會發現GPS不可以正常運作,很多時會出現“無法確認你的位置!”的錯誤信息,我本人上一次在北京以及這次在日本都遇到同樣情況。網上有人提出過多種不同的解決方法,例如重新開機,reset網絡設定等等,不過我試過通通都不行,可能每部機情況不同。不過這次在日本,發現有一個方法很有效,做法是找一個有免費wifi可用的地方,例如機場或者酒店,然後開啟iPhone地圖並且用wifi來進行一次定位,定位成功之後就可以正常使用GPS定位,以後並不需要再有wifi。 ****************************** 使用地圖書簽功能找尋目的地位置 除了GPS定位功能之外,iPhone地圖的書簽功能亦是一個很好用的工具。相信不少人在外地旅遊時,都可能有過這樣的經驗,就是按照旅遊書所提供的地址找來找去都找不到某家推介食店、商店或者旅遊景點的位置。不過如果你手上有一部iPhone(或者其他有相同功能的手機),那麼只要你將離線地圖、GPS、內置指南針以及地圖書簽這四項功能結合一起,就不怕有這種問題出現。 其實做法相當簡單,只要預先將要去的地方在iPhone地圖設定為書簽,等到去到附近時再call出來,就可以使用離線地圖,再加上以上所講的衛星定位以及指南針功能,跟住地圖向目的地前進。 http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100623104029655.jpg?ib_____D7zmuD1CV 設置地圖書簽需要在可以上網的情況下執行,所以必須在出發前完成。做法是: 1. 在連線狀態下開啟iPhone地圖;(這個時候最好已經將離線地圖複製入iPhone,以減少系統下載地圖的時間及流量。) 2. 將地圖拉到目的地附近; 3. 點畫面底部的「搜尋」,然後點上方的輸入欄; http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100623104041436.jpg?ib_____DVYhdcYt. 3. 輸入目的地電話、名稱或者地址,然後點「搜尋」;(其實操作方法與PC版的Google Map一樣,你可以輸入地址或者名稱,不過以電話進行搜尋最簡單。) http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100623104054556.jpg?ib_____DVxZ96VW7 4. 如果同一個搜尋條件顯示多處地點,需要你自己判斷哪個是正確位置,你可以將地圖放大來判斷位置是不是正確;點正確位置的大頭針後,再點名稱右邊的“>”icon; http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100623104108360.jpg?ib_____D5ZS0VnyB 5. 將畫面拉到最下,點右下角的「加入書簽」; http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100623104122903.jpg?ib_____DvidPpSNW 6. 輸入書簽名稱,然後點右上角的「儲存」。 http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100623104134874.jpg?ib_____DCDf01wz6 如果用搜尋方式沒有辦法確定目的地位置,但你已知道目的地在地圖上位置的話,亦可以用拖放大頭針的方法自己設置位置書簽,方法是點地圖畫面右下角的icon,然後點「拖放大頭針」,其他操作一樣。 http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100623104145675.jpg?ib_____D_9KypU8b 完成地圖書簽設置之後,去到當地需要確定目的地位置時,操作步驟如下: 1. 點畫面底部的「搜尋」,然後點上方輸入欄右邊的“書簽”icon; http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100623104200970.jpg?ib_____DD8izeamx 2. 在書簽列表中找到目的地,然後點目的地名稱,地圖會即時跳到目的地位置,並以紅色大頭針標示位置。 http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100623104210727.jpg?ib_____DGlqbT1hD http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100623104225893.jpg?ib_____Dkz4n_N1e 地圖上顯示了目的地位置之後,只要結合前面介紹的GPS定位以及指南針功能,就可以很寄易找到目的地啦。方法是: 1. 先顯示目的地位置; 2. 進行GPS定位顯示所在位置; 3. 啟動地圖指南針; 4. 調整iPhone機頭方向,令地圖上指南針探射狀三角形對向目的地位置; 5. 按照正確方向前進。 http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100623104029655.jpg?ib_____D7zmuD1CV ****************************** 以上是我自己在離線狀態下使用iPhone地圖以及衛星定位功能的經驗,我覺得對於出外旅遊時找尋目的地位置相當有用,希望對大家亦有幫助。另外,我將會在網誌內放上我製作完成的離線地圖檔案供有需要的朋友下載,敬請留意。 >>> iPhone離線地圖下載 – 日本地區 (http://hk.myblog.yahoo.com/dilbertblog/article?mid=2803)
離線狀態下使用iPhone地圖及衛星定位功能–Part 3:將地圖緩存文件放入iPhone 上一篇為大家介紹了製作iPhone地圖緩存文件的方法,這一篇會介紹下一個重要步驟,就是將製作好的地圖緩存文件放入iPhone內使用,完成這一步後,就可以在離線狀態下使用iPhone地圖了。 要將地圖緩存文件放入iPhone內,需要進入iPhone內的資料夾。但是原廠的iPhone是一部封閉的手機,系統將手機內的資料夾封鎖左,用戶根本沒有辦法進入。所以要使用離線地圖功能,必須要先對iPhone進行JailBreak。JailBreak後用戶就可以自由進入iPhone內的任何資料夾,就好似你使用的電腦一樣。 JailBreak的過程其實很簡單,網上有很多文章介紹,由於本文只介紹使用離線地圖的方法,所以不對JailBreak方法進行介紹,有需要學習JailBreak的朋友可以去WeiPhone討論區,閱讀此文 (http://bbs.weiphone.com/read-htm-tid-765098.html)的介紹。 將地圖緩存文件放入iPhone 完成JailBreak後,iPhone就如同一部電腦,裡面由多個資料夾組成,每個資料夾儲存不同的應用程式以及相關的資料檔案。與使用電腦一樣,要進入iPhone內不同的資料夾存取檔案,需要一個可以執行類似Windows檔案管理員功能的軟件。現時有多款具有類似功能的軟件,其中比較好用的有i-FunBox (http://www.i-funbox.com/)以及iPhone Folders (http://iphonefolders.com/)。 https://www.backpackers.com.tw/forum/extpics/photobucket/185795.jpg https://www.backpackers.com.tw/forum/extpics/pixnet/82660.jpg https://www.backpackers.com.tw/forum/extpics/pixnet/82661.jpg 關於i-FunBox與iPhone Folders的使用教學,在“電腦王阿達的3C胡言亂語”部落格內有兩篇相當詳盡的文章介紹,所以本文不再介紹,有需要的朋友可以先去看看。 iPhone/iPod最好用的連線軟體---iFunBox(更新iTunes 9.1可用版本) (http://kocpc.pixnet.net/blog/post/25782198) 有史以來最簡單的iPhone檔案管理程式---iPhone Folders (http://kocpc.pixnet.net/blog/post/26534002) 無論使用i-FunBox還是iPhone Folders,以下的操作都大致相同。 將地圖緩存文件放入iPhone的方法相當簡單,只要在電腦上安裝完i-FunBox或iPhone Folders後,將iPhone用USB線連接電腦,然後開啟i-FunBox或iPhone Folders,再進入存放iPhone地圖緩存文件的資料夾:“/var/mobile/Library/Caches/Map/MapTiles/”(注意:OS 3.0及以前版本的地圖緩存文件的資料夾位於:“/var/mobile/Library/Caches/MapTiles/”),然後將按照上一篇介紹製作完成並已經儲存在電腦內的地圖緩存文件“MapTiles.sqlitedb”複製到上述資料夾就可以,如果資料夾內有舊的“MapTiles.sqlitedb”,選擇覆蓋就可以,操作方式就好像在電腦上copy & paste檔案一樣。 如果有需要將地圖坐標文件“com.apple.Maps.plist”亦複製入iPhone,可以用上述相同方法,將“com.apple.Maps.plist”複製到iPhone內的資料夾:“/var/mobile/Library/Preferences/”,並覆蓋原來的文件。地圖坐標文件“com.apple.Maps.plist”的作用以及是否有需要複製的說明,可以再參考上篇Step 8。 完成將地圖緩存文件複製到iPhone之後,就可以在離線狀態下打開iPhone地圖程式,按照正常操作方法瀏覽地圖。 操作小Tips: Q:為什麼打開iPhone地圖之後畫面上沒有地圖顯示? A:1) 如果你正身處地圖所在範圍之內,請點左下角的定位掣令地圖顯示。2) 如果你不在地圖所在範圍之內,又或者因為GPS信號問題無法定位,但你已經將地圖坐標文件“com.apple.Maps.plist”複製入iPhone,請用手指將地圖進行放大或縮小令地圖顯示。3) 如果你不在地圖所在範圍之內,又或者因為GPS信號問題無法定位,但你沒有將地圖坐標文件“com.apple.Maps.plist”複製入iPhone,請先將地圖坐標文件“com.apple.Maps.plist”複製入iPhone,然後用手指將地圖進行放大或縮小令地圖顯示。 Q:如何確保iPhone處於離線狀態? A:當你身處外地時,只要確定「設定」>「一般」>「網絡」內的“資料漫遊”選項沒有開啟,那麼iPhone就不可以上到網,即是一定是處於離線狀態。如果想再保險些,可以用BossPrefs將“EDGE”選項關閉。如果沒有安裝BossPrefs,可以進入「設定」>「一般」>「網絡」>「行動資料網絡」,然後點“行動資料”下APN旁邊的網址,在最後任意加一個英文字母令網址錯誤,就可以防止連線。 http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100620092136769.jpg?ib_____DkuFLqTdA http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100620093601799.jpg?ib_____DuORT7Wct http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100620093612564.jpg?ib_____DbkMDRwQv ****************************** 防止地圖緩存文件內的資料被刪除 到這步為止我們已經解決了在第一篇所提出的兩個問題中的第二個問題,即是如何預先將地圖資料存入iPhone地圖緩存文件的問題。至於第一個問題,即是有什麼辦法可以保持緩存文件內的資料不被刪除,又應該如何解決呢? 當在連線狀態下使用iPhone地圖時,系統會從Google Map不斷下載所瀏覽區域的地圖資料,同時不斷更新地圖緩存文件,令緩存文件只保留最新的地圖資料,其他資料會被刪除。所以,就算你已經按照以上方法製作好地圖緩存文件,並且複製入iPhone內,但如果在連線狀態下使用iPhone地圖,你複製入iPhone的地圖緩存文件同樣會被系統刪除,即是無法再在下次打開iPhone地圖時使用。 但如果你將製作好的地圖緩存文件複製入iPhone後,只在離線狀態使用iPhone地圖,就不會有以上問題。因為在離線狀態,系統無法從Google Map下載地圖資料,所以不會更新地圖緩存文件,因此你之前複製入iPhone內的地圖緩存文件會被一直保留。 不過在將製作好的地圖緩存文件複製入iPhone後,我們有可能需要在連線狀態下使用一兩次iPhone地圖,例如在有wifi的情況下使用一次GPS定位來調整GPS功能(見下篇介紹),或者在可以上網的情況設定地圖書簽(見下篇介紹)。所以,仍然需要找個方法解決在連線狀態下使用iPhone地圖時,可以保持緩存文件內的資料不被刪除。 其實要解決這個問題,方法亦相當簡單。在Cydia上有一個叫Maps Enhancer (http://modmyi.com/cydia/package.php?id=10733)的應用程式,只要安裝了這個程式,然後開啟保留地圖緩存(Keep maps cache)功能,就可以防止iPhone地圖刪除地圖緩存文件內的資料。 Map Enhancer可以在Cydia內Search,直接下載安裝完成後就可以使用。 http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100620061208754.jpg?ib_____DdSOkdG9b 如果在Cydia找不到,亦可以在這裡下載 (http://www.4shared.com/file/QS-0KRa2/mapsenhancer_12.html?start=)。下載後將檔案複製到iPhone內任意資料夾,然後用iFile (http://iphone.heinelt.eu/?Applications:iFile)或Terminal安裝,又或者複製到iPhone的“/var/root/Media/Cydia/AutoInstall”資料夾,然後重新開機讓iPhone自動安裝。 安裝完成後,進入「設定」會見到Map Enhancer。進入Map Enhancer後,將“Keep maps cache”選項開啟就可以,其他選項可以不理。 http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100620061218841.jpg?ib_____D1Z40LgJi http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100620061228114.jpg?ib_____DSftUGvmv ****************************** 多個地圖之間的切換 上一篇中曾經提過,由於受硬件限制,通過Global Map Download Tool製作的地圖緩存文件的size有一定上限。所以,當你要去的地方較大時,可能就需要製作多個地圖檔案。例如,當你要去北海道時,可能就需要製作道南、道央、富良野等多個地圖。 但在iPhone內地圖緩存文件的資料夾:“/var/mobile/Library/Caches/Map/MapTiles/”在同一時間只能存在一個地圖緩存文件“MapTiles.sqlitedb”,所以按照以上介紹的方法,每次只能使用一個地圖。當需要在同一次旅程中使用多個地圖時,需要先解決如何在不同地圖之間進行切換的問題。 解決這個問題的關鍵,在於有沒有辦法在iPhone上直接進行檔案複製的動作。如果可以不依賴電腦在iPhone上直接進行檔案複製的話,就可以預先將多個地圖檔案存入iPhone內某個資料夾,然後等到需要使用某個地圖時,再直接在iPhone上將地圖檔案複製至“/var/mobile/Library/Caches/Map/MapTiles/”資料夾使用,這樣就可以解決不同地圖之間切換的問題。 寫得出來,答案當然是有啦。在Cydia上有一個叫iFile (http://iphone.heinelt.eu/?Applications:iFile)的軟件(不是iTunes上那個),它是一個可以在iPhone上運行,執行檔案管理工作的iPhone應用程式。iFile可以執行建立資料夾、檔案複製、貼上、刪除、重新命名等多種檔案管理工作,亦可以用來開啟多種不同格式的檔案,以及執行iPhone deb檔案的安裝工作。有關iFile的詳細功能以及使用說明,可以參考官方網頁 (http://iphone.heinelt.eu/?Applications:iFile)內的介紹。 iFile在以前是一個免費軟件,不過經過幾次更新之後,現在已經要收費,費用是US$4,不過網上也有不少破解版本可以下載 (http://phpwind.dev.weiphone.com/pwupdate/read-htm-tid-689746.html)。安裝方法是將檔案用iFunBox或iPhone Folders複製到iPhone的“/var/root/Media/Cydia/AutoInstall/”資料夾(如果沒有就自己建立資料夾),然後重新開機。 安裝完成後iPhone桌面上會多了一個iFile圖標,點一下這個圖標就可以開啟iFile,並且進入iFile預設主目錄,點左下角齒輪可以對程式進行設置。用手指點資料夾名稱就可以進入資料夾,就好像在PC上用mouse click入資料夾一樣。其他詳細功能以及使用說明,請參考官方網頁 (http://iphone.heinelt.eu/?Applications:iFile),以下只集中介紹有關應用iFile進行地圖切換的操作。 http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100622100008759.jpg?ib_____DCQTri7bP http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100622100019414.jpg?ib_____DJ8JhDYg3 http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100622100029592.jpg?ib_____DONGYu3iv 使用iFile完成地圖之間切換的方法如下: 1. 用iFunBox、iPhone Folders或iFile先在iPhone上建立一個資料夾,用來存放地圖檔案; Tips: iFile有一個功能可以將常用資料夾加入為書簽,以後每次需要進入該資料夾時,只需要打開書簽列表,然後點入書簽就可以快速進入資料夾。加入書簽的方法是: a. 進入要加入為書簽的資料夾; b. 點營幕底部的書本圖案進入書簽列表; c. 點右下角的加號; d. 輸入書簽名稱,再點右上角的「建立」。 http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100622100039751.jpg?ib_____Dp6i6x72o http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100622100049158.jpg?ib_____DdzVQqhnD 建議將按照這個step所建立的暫存資料夾,以及地圖緩存文件資料夾“/var/mobile/Library/Caches/Map/MapTiles/”和地圖坐標文件資料夾“/var/mobile/Library/Preferences/”,都加入書簽,方便以下操作。 2. 用iFunBox或iPhone Folders從電腦上將存放地圖緩存文件“MapTiles.sqlitedb”和地圖坐標文件“com.apple.Maps.plist”的整個資料夾複製到上一點所建立的iPhone資料夾內; Tips: 資料夾最好使用地圖區域名稱,例如:京阪神,中英文都可以。) http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100622100101507.jpg?ib_____DS6lgeyW5 3. 當要使用某個地圖時,用iFile進入地圖檔資料夾,然後將地圖緩存文件“MapTiles.sqlitedb”和地圖坐標文件“com.apple.Maps.plist”(如果需要)分別複製到資料夾“/var/mobile/Library/Caches/Map/MapTiles/”和“/var/mobile/Library/Preferences/”內。 Tips: 複製檔案的方法是: (1) 複製檔案 a. 進入存放檔案的資料夾; b. 點右上角的「編輯」; c. 點要複製的檔案; d. 再點營幕底部最右邊的icon,然後點「複製/鏈接」; e. 點右上角的「完成」; (2) 貼上檔案 f. 進入要貼上檔案的資料夾; g. 點右上角的「編輯」; h. 再點營幕底部最右邊的icon,然後點「貼上」; i. 最後點右上角的「完成」。 http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100622100111390.jpg?ib_____DomQm_QTb http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100622100122598.jpg?ib_____D7kiHgMi_ 按照上述操作,就可以實現多個地圖之間的切換。不過,上述方法仍有兩個缺點。第一個缺點是切換地圖時需要將地圖檔案從iPhone內某個暫存資料夾複製至緩存文件資料夾,意味著需要佔用多一個檔案size的儲存空間,因為複製後在暫存資料夾與緩存文件資料夾內都有同一檔案。第二個缺點是當地圖檔案size太大時,貼上檔案可能需要幾分鐘時間。 有沒有辦法解決?當然有啦。前面提過iFile有齊所有檔案管理的功能,包括對檔案進行重新命名。利用這個功能,可以採用以下較簡單的做法來完成在不同地圖之間進行切換的工作,步驟如下: 1. 先在PC上將旅程中需要使用的各個地圖緩存文件檔案重新命名,例如:將京阪神地圖的檔案名稱,由“MapTiles.sqlitedb”改為“MapTiles.sqlitedb京阪神”,將和歌山地圖的檔案名稱,由“MapTiles.sqlitedb”改為“MapTiles.sqlitedb和歌山”等等,即在原來檔案名稱之後加上地圖區域名稱,你可以任意用什麼名都可以,總之令你容易記得起地圖就可以。 2. 用iFunBox或iPhone Folders將所有檔案複製到iPhone上地圖緩存文件資料夾“/var/mobile/Library/Caches/Map/MapTiles/”內。 http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100622100133891.jpg?ib_____DKpifkJJ0 3. 當要使用某個地圖時,用iFile進入“/var/mobile/Library/Caches/Map/MapTiles/”資料夾,然後點要使用的地圖名稱右邊的“>”icon。 4. 在檔案屬性頁面內,點檔案名稱,例如:“MapTiles.sqlitedb京阪神”,然後將“MapTiles.sqlitedb京阪神”中的“京阪神”三個字刪除,令檔案名稱變回“MapTiles.sqlitedb”。(如果“/var/mobile/Library/Caches/Map/MapTiles/”資料夾內已經有“MapTiles.sqlitedb”檔案,應先將此檔案重新命名為其他名稱。) http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100622100144963.jpg?ib_____DY7gUveEK http://a367.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_1/blog/ap_20100622100154187.jpg?ib_____DHlDJQP.k 至於地圖坐標文件,由於檔案size小,而且資料夾“/var/mobile/Library/Preferences/”內有太多其他檔案,所以如果有需要複製,建議用以上複製檔案的方法操作。 ****************************** 第一篇中曾經提過iphoneofflinemap (http://code.google.com/p/iphoneofflinemap/)這個iPhone應用程式,而網上很多人提到iPhone離線地圖時,都會聯想到iphoneofflinemap,令很多人以為iphoneofflinemap等於iPhone離線地圖。其實iphoneofflinemap的最主要功能,只是協助完成以上介紹的切換地圖的工作。 使用iphoneofflinemap時,同樣需要先用iFunBox或iPhone Folders從電腦上將存放地圖緩存文件“MapTiles.sqlitedb”和地圖坐標文件“com.apple.Maps.plist”的整個資料夾複製到iphoneofflinemap的指定資料夾內(/var/mobile/Media/Maps);然後到需要使用某個地圖時,再用iphoneofflinemap完成將地圖緩存文件“MapTiles.sqlitedb”和地圖坐標文件“com.apple.Maps.plist”分別複製到資料夾“/var/mobile/Library/Caches/Map/MapTiles/”和“/var/mobile/Library/Preferences/” 的工作。 所以,使用iphoneofflinemap與使用iFile的操作原理與結果,完全相同,只是iphoneofflinemap相對較為簡便。不過由於適用於OS 3.1.2及3.1.3的iphoneofflinemap存在一個很大的bug,而且亦有以上所講的兩項缺點,即是需要佔用多一個檔案size的儲存空間,以及貼上檔案的時間太長。所以我本人並沒有使用iphoneofflinemap。 由於從iPhone OS3.1起對地圖緩存文件資料夾做了改動,由原來的“/var/mobile/Library/Caches/MapTiles/”改為“/var/mobile/Library/Caches/Map/MapTiles/”,所以iphoneofflinemap亦作出左相應更新,在2010年3月底推出了適用於OS 3.1.2及3.1.3的 “3.1.2 Preview version”,不過這個版本有一個bug,就是當複製地圖緩存文件時,iphoneofflinemap會將同一個地圖緩存文件複製兩次,而且被額外複製的副本會一直留在“/var/mobile/Library/Caches/Map/MapTiles/”資料夾內,需要自己人手delete才可以刪除。 ****************************** 關於在離線狀態下使用iPhone地圖的方法,已經通過以上兩篇文章作了完整介紹。下一篇將會為大家介紹在有離線地圖的基礎上,應用衛星定位以及地圖書簽的方法,使出外旅遊找尋目的地時更加便利。 繼續閱讀下一篇 >> Part 4:衛星定位與地圖書簽 (http://hk.myblog.yahoo.com/dilbertblog/article?mid=2813)
離線狀態下使用iPhone地圖及衛星定位功能–Part 2:製作iPhone地圖緩存文件 上一篇介紹了iPhone地圖的運行原理,亦明白到只要有方法預先將地圖資料存入iPhone地圖的緩存文件,並且能夠保持緩存文件內的資料不被刪除,就可以在離線狀態下使用iPhone地圖。這一篇就為大家介紹預先將地圖資料存入iPhone地圖緩存文件的方法。 製作iPhone地圖緩存文件 如果想將地圖資料預先存入iPhone地圖的緩存文件,最簡單的方法是先將Google地圖的資料下載到電腦,然後將資料製作成緩存文件格式的檔案,再將檔案複製到iPhone上地圖緩存文件所在資料夾取代原來的緩存文件檔案。 如果有使用過PSP地圖功能的朋友應該知道,有一款叫Global Map Download Tool (GMDL)的軟件,可以將Google地圖下載到PSP使用。其實GMDL同樣可以將從Google Map下載到PC的地圖資料製作成iPhone地圖的緩存文件。使用方式如下: 一、下載及運行Global Map Download Tool軟件 1. 首先到官方網頁 (http://www.in7ane.com/)下載Global Map Download Tool。 >> GMDL最新版本(0.5.13b)下載 (http://www.in7ane.com/psp/gmdl0.5.13b.zip) 2. 將下載回來的壓縮文件(gmdl 0.5.13 b.zip)解壓縮到你指定的位置。 3. 進入資料夾:\GMDL\bin\Debug\,double click檔案“Global Map Download Tool.exe”,執行程式。(GMDL無須安裝,只須執行Global Map Download Tool.exe便可) Global Map Download Tool的版面與Google Map很相似,但是就多了很多選項以及按鈕,而一般情況下大部份選項與按鈕都可以不用理會,詳細使用見以下說明。 圖1 http://f20.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_16/blog/ap_20100610114550584.jpg?ib_____DWGDO0zec 二、使用Global Map Download Tool軟件製作iPhone地圖緩存文件 Step 1. 執行Global Map Download Tool.exe程式後,先在地圖搜索欄(圖1中標示(A))的位置)輸入打算下載的地方名稱,例如“Japan”或者“日本”,然後按「搜尋地圖」。地圖跳至所輸入地方後,再將地圖放大拉近至要下載的區域。Global Map Download Tool中放大及縮小地圖範圍的操作與Google Map相同,可以使用畫面上的「放大及縮小」操作杆(見圖1中的標示(B));亦可以使用滑鼠中間的滑輪進行放大及縮小操作。 - - - - - - - - - - Step 2. 按下「Preview 1x」(圖1中標示(C)的位置)按鈕,預覽進入下載範圍的地圖區域(圖2)。如果要下載的區域不在預覽視窗內,就需要返回地圖畫面進行調整,調整後再按「Preview 1x」預覽。調整時需要移動地圖,將下載區域盡量拉到正中位置,如果預覽視窗內的地圖無法完全包含所要下載的區域,可以嘗試將地圖縮小一級再試。由於Global Map Download Tool將地圖劃分為方塊區域,所以這個step有時需要一些耐性完成,總之不斷重複直至你要下載的區域包括在預覽視窗內為止。 圖2 http://f20.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_16/blog/ap_20100610114601417.jpg?ib_____Ds3NJKupk 註:預覽視窗上面所顯示的資料(圖2中紅框部份),代表如果按所設定的地圖最精細層次(見Step 3說明),將顯示在視窗內的整個區域下載,所下載的地圖圖片的數量以及預計size,上例中有1,398,100個圖片file,並大約需要8,191MB儲存空間。(有關下載地圖檔案size的問題,請參考Step 5說明。) - - - - - - - - - - Step 3. 按下「Advanced」(圖1中標示(D)的位置),顯示地圖坐標視窗(圖3中紅框部份),然後再按「Get Numbers」(圖3中標示(E)的位置)。 圖3 http://f20.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_16/blog/ap_20100610114616324.jpg?ib_____DxlxIYapw 按下「Get Numbers」後,坐標視窗內會顯示下載區域的地圖坐標以及地圖縮放層次的數據(圖3中標示(F)的位置)。包括:x – 數值表示下載區域地圖的橫軸坐標,數值越小越向西(左);,y – 數值表示下載區域地圖的縱軸坐標,數值越小越向北(上);zoom – 數值表示下載區域地圖最廣域的層次(即預覽視窗中所顯示的範圍);min zoom – 數值表示下載區域地圖最精細的層次,數值越小地圖越精細,極限是-2。 Global Map Download Tool將下載地圖的min zoom預設為0,但可以人手修改,只須在格內輸入自訂數值便可。當min zoom = 0時,地圖可以顯示一般街道名稱,主要機構、酒店、百貨公司名稱,主要便利店位置,地鐵站出入口編號等,一般已經可滿足使用需要。min zoom = -1時,地圖可以顯示得更細緻,看起來更清楚,而且一些較有名的店鋪亦可以顯示出來。而當min zoom = -2時,地圖會精細到可以顯示大多數建築物的名稱和門牌號碼,以及大部份商店名稱。 但是對於iPhone地圖,最多只能support min zoom = -1的層次,所以就算你將min zoom設定為-2,製作成iPhone地圖使用的格式文件後,在iPhone地圖上亦無法顯示-2層次的部份。 另外,需要留意min zoom數值每減少1,下載地圖資料的size會增加大約一倍。所以決定min zoom數值時,需要考慮地圖size會否過大。(有關下載地圖檔案size的問題,請參考Step 5說明。) - - - - - - - - - - Step 4. 按下「Set Dir」(圖3中標示(G)的位置),然後在彈出的視窗中(圖4)選擇(或者建立)存放下載資料的資料夾。此步驟不執行亦可,當不執行此步時,Global Map Download Tool會自動在資料夾:\GMDL\bin\Debug\內建立一個以“_Map of”開頭的資料夾來存放下載資料。 圖4 http://f20.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_16/blog/ap_20100610114626528.jpg?ib_____D6oLzEjxi - - - - - - - - - - Step 5. 按下「Download The Map」(圖3中標示(H)的位置),然後在彈出的視窗中(圖5)選擇要下載的區域。圖5所顯示的地圖範圍與預覽視窗(圖2)相同,Global Map Download Tool會將視窗的區域劃分為64個方塊區域,可以根據需要選擇下載哪些區域,不需要下載的區域可以將方格區域中間的“tick號”除去。如果要下載的區域不多,可以先按右上角的「[]all」按鈕,將所有方格區域的“tick號”除去,然後再tick選需要下載的區域。 圖5 http://f20.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_16/blog/ap_20100610114642700.jpg?ib_____DLyDMqXEY 選擇下載區域後,系統會根據所設定的地圖最精細層次(即Step 3中所設定的min zoom數值),以及所選擇下載區域的數量,估計所下載的地圖圖片數量(圖5中標示(I)的數值)以及下載圖片檔案所佔用的儲存空間(圖5中標示(J)的數值)。 Google地圖是由無數張圖片組成,每張圖片的size大約有十幾Kbye,而Global Map Download Tool的運作是先將Google地圖的圖片檔案下載到電腦,然後再將圖片檔案合併及轉成地圖格式檔案。圖5中(J)的數值是指圖片檔案的總size,並不等於轉成地圖格式後地圖檔的size。一般情況下,轉成地圖格式後地圖檔的size大約是圖5中(J)的數值的40%至70%,實際比例視乎所下載區域在Google地圖中的精細程度。如果下載區域主要是市區的話,由於Google地圖對市區比較精細,圖片檔較多,所以合併及轉檔後地圖檔的size亦較大,可能達圖5中(J)的數值的70%;如果下載區域主要是郊野的話,由於Google地圖對人煙較少的地區比較粗糙,圖片檔較少,所以合併及轉檔後地圖檔的size亦較小,可能只有圖5中(J)的數值的40%。 雖然理論上使用Global Map Download Tool下載的地圖資料可以無限大,但實際上受電腦硬件所限,一般當下載的地圖圖片檔案size超過3,000MB 時,Global Map Download Tool去到轉檔時就會出現"死機"情況。實際上限是多少要視乎電腦硬件的配置。所以,下載前要留意檔案size數值,盡量不要超過上限。 另外,下載的地圖圖片檔案size大小亦影響下載時間,當size超過2,000MB時,一般需要十幾小時才可以下載完成,具體多少亦要視乎電腦硬件的配置以及網絡連線的速度而定。下載大size檔案(指超過1,000MB但未過3,000MB)的技巧,請參考下文“下載大體積地圖的技巧”的介紹。 最後想說明多一點,圖5中(J)的數值下面的選項(1x,2x,4x……),代表min zoom。如果在Step 3中將min zoom設定為-1,那麼1x就代表-1層次,2x代表0層次,如此類推;如果在Step 3中將min zoom設定為0,那麼1x就代表0層次,2x代表1層次,如此類推。所以如果你已經在Step 3中設定好所需的min zoom數值,就不需要改動這部份選項。 網上面有一些介紹Global Map Download Tool的文章說iPhone地圖不support 1x,建議除去1x方格的“tick號”,其實這個講法只是當你將min zoom設定為-2時,才正確。因為當min zoom設定為-2時,1x就代表-2層次,而iPhone地圖不support -2層次,所以這個時候可以不要1x。但是當min zoom設定為-1或更高數值時,就應該要保留1x。所以正確的理解應該是,iPhone地圖不support min zoom = -2,而不是不support 1x。 - - - - - - - - - - Step 6. 選擇好下載區域後,按視窗最上面的「Uncheck any titles which you. . . . . .」(圖5中紅框部份),系統就會開始從Google Map將地圖圖片檔案下載至電腦。下載過程中,Progress(圖3中標示(K)的位置)右邊會顯示已下載檔案的數量、已完成百分比以及預計剩餘時間(不過這個時間不準確,可以不理)。 - - - - - - - - - - Step 7. 當系統完成從Google Map下載所有地圖圖片檔案後,會自動將圖檔合併及轉成多個GPSFS檔案(圖6),並自動刪除所下載的地圖圖片檔案,然後顯示「Finished downloading the map and GPSFS created」的提示視窗(圖7)。 圖6 http://f20.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_16/blog/ap_20100610114651865.jpg?ib_____DM4kvczyM 圖7 http://f20.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_16/blog/ap_20100610114657940.jpg?ib_____DqybalY6r 註:如果需要在PSP中使用離線地圖,可以將儲存GPSFS檔案的整個資料夾(資料夾名稱必須以“_”開始)複製到PSP中,然後使用Map This (http://deniska.dcemu.co.uk/mapthis-0-5-20-with-holux-support-for-slim-psps-79825.html)軟件開啟地圖。 - - - - - - - - - - Step 8. Global Map Download Tool不會自動將GPSFS檔案轉為iPhone地圖緩存文件格式的檔案,需要人手執行。點擊「Finished downloading the map and GPSFS created」提示視窗中的「確定」按鈕後,系統會返回圖3的主畫面。按下「->iPhone」按鈕(圖3中標示(L)的位置)後,會彈出轉換為iPhone地圖格式的操作視窗(圖8)。 圖8 http://f20.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_16/blog/ap_20100610114706760.jpg?ib_____DSLgiIu78 按下「Set Dir」(圖8中標示(M)的位置)選擇存放轉換完成後的iPhone地圖檔案的資料夾路徑,請留意是選擇資料夾的路徑,而不是真正存放地圖檔案的資料夾。以圖8為例,我打算將轉換後的iPhone地圖檔案存放在一個叫“東京”的資料夾,而這個資料夾位於路徑“G:\iPhone\離線地圖”內。操作方法是先按下「Set Dir」,然後選擇路徑“G:\iPhone\離線地圖”,確定後Output輸入欄(圖8中紅框部份)會顯示“G:\iPhone\離線地圖\”,再在路徑後面輸入資料夾名稱“東京”,但記住“東京”資料夾不可以是已經存在的資料夾。其實亦可以直接在Output輸入欄輸入路徑以及資料夾名稱。 如果覺得麻煩不想自己執行以上步驟設定資料夾,可以由系統預設。預設的資料夾存放在桌面,資料夾名稱是“iphone_map”,但要留意轉檔前桌面上不可以有“iphone_map”這個資料夾存在,否則會出現資料夾已經存在的錯誤信息。 操作視窗內其餘選項不需要改動,使用系統預設就可以。按下「Process (click here, and wait)」(圖8中標示(N)的位置)等一會系統就會開始轉檔。完成轉檔後,會顯示「Did: Map xxxxxx」的提示視窗(圖9)。 圖9 http://f20.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_16/blog/ap_20100610114712860.jpg?ib_____DVGdE_o_G 註:其實這個Step不一定需要接住Step 7之後即時進行,如果沒有時間你可以在完成Step 7之後關閉程式,等下次有時間時再重新開啟Global Map Download Tool執行將GPSFS檔案轉為iPhone地圖緩存文件格式的工作。當重新開啟Global Map Download Tool後,只需要按照Step 4,在按下「Set Dir」(圖3中標示(G)的位置)後彈出的視窗中(圖4)選擇上次存放下載資料的資料夾(資料夾內已經有齊GPSFS檔案),再按Step 8的做法進行便可。 完成後,存放檔案的資料夾內會有兩個檔案(圖10)。其中“MapTiles.sqlitedb”是iPhone地圖緩存文件檔案,只需要將“MapTiles.sqlitedb”複製到iPhone地圖緩存文件所在的資料夾,就可以在離線狀態下使用iPhone地圖。而另一個檔案“com.apple.Maps.plist”是地圖坐標文件,記錄了所下載區域的坐標位置。 圖10 http://f20.yahoofs.com/hkblog/UM90eiGWGRtDCkSZB2VBesCyiw--_16/blog/ap_20100610114720883.jpg?ib_____DTxWirtbG 坐標文件的作用是令iPhone地圖知道緩存文件中地圖所在位置,當打開iPhone地圖時,頁面會自動顯示地圖所在位置。如果不將坐標文件同時複製到iPhone,打開iPhone地圖時頁面會顯示對上一次退出iPhone地圖時,地圖所在的位置。例如,如果你對上一次退出iPhone地圖時,正瀏覽澳門地圖,而複製到iPhone的是日本東京地圖的緩存文件,那麼當你開啟iPhone地圖時,就會找不到東京地圖,畫面只會顯示上次所瀏覽的澳門地圖;如果你在離線狀態下開啟iPhone地圖,更加只會顯示空白畫面。 不過如果你身處的地方在地圖範圍之內,又或者之前有將地圖中某些地點做了bookmark(製作bookmark的方法及用途,將於下文介紹),那麼就算不將坐標文件複製到iPhone亦沒有問題。如果你身處的地方在地圖範圍之內,那麼只需要點一下iPhone地圖左下角的「定位」icon,就會將地圖畫面轉到所在位置;又或者如果之前有將地圖中某些地點做了bookmark,那麼在bookmark中點某個地點,同樣可以將地圖畫面轉到bookmark地點的位置。 至此,製作iPhone地圖緩存文件的工作已經完成。Global Map Download Tool將GPSFS檔案轉換為iPhone地圖緩存文件後,並不會自動刪除GPSFS檔案,需要人手刪除。另外,在資料夾所在drive的根目錄中,可能會殘留一些以“1x”或“2x”命名的資料夾,這些資料夾內的資料在完成製作iPhone地圖緩存文件後,已經沒有用,可以完全刪除。 三、下載大體積地圖的技巧 之前講過,當下載的地圖圖片檔案太多而令到檔案的size太大的時候,可能需要十幾小時甚至更長時間才可以完成下載。在這種情況下,是不是需要一直開著電腦等它下載完成再轉完檔才可以關機呢?答案是並不需要。 Global Map Download Tool在下載地圖圖片檔案的時候,是逐個檔案下載並儲存在電腦上,當未完成下載所有檔案前關閉程式時,已經下載的檔案並不會掉失,仍然被保存在電腦資料夾內,當下次重新開啟Global Map Download Tool時,程式會先掃描資料夾內的檔案,如果檔案已經存在,程式會跳過而不會重複下載,然後繼續下載剩餘未下載的部份。(程式進行掃描時,你可以見到Progress(圖3中標示(K)的位置)右邊顯示的已完成百分比數值會快速增加,直至你上次關閉程式時的已完成百分比。)所以你大可以在需要關機時,關閉Global Map Download Tool,等到下次上網時再執行,直至全部完成為止。 操作方法與上述所講的步驟相同,即是當下次重新開啟Global Map Download Tool時,重新執行Step 1至Step 6,而在全部下載完成後,再執行Step 7至Step 8。但有以下幾點事項需要注意: 1. 坐標視窗內顯示的下載區域地圖坐標以及地圖縮放層次的數值(圖3中標示(F)的位置),必須與第一次設定的數值相同,所以第一次下載時,最好記下這些資料。 2. 在Step 4中,按下「Set Dir」(圖3中標示(G)的位置)後從彈出的視窗中(圖4)選擇的資料夾,必須是上次存放下載資料的資料夾。 3. 在Step 5中,按下「Download The Map」(圖3中標示(H)的位置)後在彈出的視窗中(圖5)選擇要下載的區域時,你應該選擇與上次相同的下載區域,不過你亦可以增加下載區域。 4. 使用這個方法,理論上下載的地圖資料可以無限大,但實際上因為受電腦硬件所限,當下載的地圖圖片檔案size過大時(一般是超過3,000MB 時),Global Map Download Tool去到轉檔時就會出現"死機"情況(實際上限是多少要視乎電腦硬件的配置)。所以,實際上下載地圖的size有一定限制。舉個例子,如果將min zoom設定為-1,下載一個包含日本京都府南部、大阪全境以及奈良大部份地區的地圖,下載檔案size已經接近3,000MB,接近上限。如果以同一設定下載日本九州地圖,需要分三個地圖下載。 介紹完製作iPhone地圖緩存文件的方法後,下一個步驟是將地圖緩存文件放入iPhone內使用,這部份會在下一篇為大家介紹。 繼續閱讀下一篇>> Part 3:將地圖緩存文件放入iPhone內使用 (http://hk.myblog.yahoo.com/dilbertblog/article?mid=2812)
出外旅遊地圖是必備物品,不過紙張地圖容易破損,而且亦只能提供較廣區域的略圖或者有限地方的細圖,如果去多處地方,需要帶上多份地圖極不方便。 除此之外,紙張地圖亦無法提供你正身在何處的資訊,所以當你正找尋某個地方但又不知自己身在何處的時候,即使手上有一張地圖用處亦都不大。 隨著智能手機的發展與普及,現在很多手機都擁有地圖及衛星定位功能。這兩項功能,正好能夠解決紙張地圖存在的缺點與限制。 小弟使用的是iPhone 3GS,最近幾次外出都有在離線狀態下使用iPhone地圖與衛星定位功能,對於找尋目的地非常有用,是自由行的必備設備。以下就將使用經驗寫出來與大家分享。 iPhone內置的地圖軟件(以下稱為:iPhone地圖)需要一邊用一邊從網上下載地圖資料,需要在上網狀態下先才可以使用,所以當身處外地而無法上網時,地圖功能變成有等於無。 現時GPRS數據漫遊收費仍然極貴,一般每1Kbyte收費由MOP0.1至MOP0.2之間,而使用iPhone地圖瀏覽網上地圖需要使用巨大GPRS流量,例如截入一個細緻到可以看到店舖名稱的地圖畫面,就需要1MB左右流量,以平均MOP0.15/Kbyte計算,收費就已經超過MOP150。雖然現在有網絡供應商推出固定收費的GPRS數據漫遊套餐,但收費亦不便宜。所以想在外遊時使用iPhone地圖,又不想破費的話,就需要使用離線地圖。 什麼是離線地圖?其實沒有什麼特別,就是指在不上網的狀態下使用地圖功能。現時市面上有好幾種不同的iPhone離線地圖軟件,有一些是獨立的軟件,與iPhone地圖無任何關係,可以單獨使用,例如xGPS、拉手地圖等等。而有一些就只是iPhone地圖的外掛程式,功能只是完成一些工作,方便iPhone地圖在離線狀態下開啟地圖,其中最多人使用的是OfflineMap。 iPhone地圖事實上是一款好好用的地圖軟件,而xGPS、拉手地圖造些獨立軟件我個人並不太喜歡。所以,以下只介紹在離線狀態下使用iPhone地圖的方法。 iPhone地圖運行原理 為了使大家容易明白,需要先解釋一下iPhone地圖的運作原理。 https://www.backpackers.com.tw/forum/extpics/pixnet/82640.jpg iPhone地圖的功能是將透過internet從Google Map獲取的地圖資料顯示在iPhone上。當打開iPhone地圖時,系統會進行連線,然後將Google Map的地圖資料下載到iPhone,再在iPhone畫面顯示地圖。使用iPhone地圖時,系統會產生一個緩存文件,使用中從網上下載的地圖資料會被儲存入這個文件。 當關閉iPhone地圖,緩存文件文件內的資料亦會被自動刪除,所以,在上網狀態下瀏覽過的地圖,不可以在下次重開iPhone地圖時再顯示出來。正因如此, iPhone地圖必須在保持連線的狀態下才可以使用。 明白iPhone地圖的運行原理之後,相信明眼人會想到,如果可以預先將地圖資料存入iPhone地圖的緩存文件,並且可以保持緩存文件內的資料不被刪除,就應該可以在離線狀態下使用iPhone地圖了,因為如果緩存文件內的資料可以保留,那麼每次打開iPhone地圖時都可以讀取裡面的地圖資料,即使在離線狀態下打開iPhone地圖,都可以顯示緩存文件內所保留的地圖啦。 完全正確!這個就是在離線狀態下使用iPhone地圖的原理。明白原理之後,只需要解決兩個問題,就可以成功使用。 第一個問題是,有什麼辦法可以保持緩存文件內的資料不被刪除? 第二個問題是,有什麼辦法預先將地圖資料存入iPhone地圖的緩存文件? 解決到上述兩個問題,就可以使到iPhone地圖在離線狀態下都可以使用。 以下先介紹解決第二個問題的方法,即如何預先將地圖資料存入iPhone地圖的緩存文件。至於第一個問題,留待以後再說明。 未作介紹之前,需要先說明的是,由於要使iPhone地圖可以在離線狀態下使用,需要進入iPhone封鎖了的系統資料夾內修改相關文件,所以要使用離線地圖功能,必須要先對iPhone進行JailBreak。未JailBreak過的iPhone暫時用不到離線地圖功能。JailBreak的過程其實好簡單,網上有很多文章介紹,由於本文只介紹使用離線地圖的方法,所以不對JailBreak方法進行介紹,有需要學習JailBreak的朋友可以去WeiPhone討論區,閱讀此文 (http://bbs.weiphone.com/read-htm-tid-765098.html)的介紹。 由於篇幅太長,本文會分為多篇,正題會由下篇開始! 繼續閱讀下一篇>> Part 2:製作iPhone地圖緩存文件 (http://hk.myblog.yahoo.com/dilbertblog/article?mid=2809)