離線狀態下使用iPhone地圖及衛星定位功能–Part 1:iPhone地圖運行原理

出外旅遊地圖是必備物品,不過紙張地圖容易破損,而且亦只能提供較廣區域的略圖或者有限地方的細圖,如果去多處地方,需要帶上多份地圖極不方便。

除此之外,紙張地圖亦無法提供你正身在何處的資訊,所以當你正找尋某個地方但又不知自己身在何處的時候,即使手上有一張地圖用處亦都不大。

隨著智能手機的發展與普及,現在很多手機都擁有地圖及衛星定位功能。這兩項功能,正好能夠解決紙張地圖存在的缺點與限制。

小弟使用的是iPhone 3GS (現在使用iPhone 4了),最近幾次外出都有在離線狀態下使用iPhone地圖與衛星定位功能,對於找尋目的地非常有用,是自由行的必備設備。以下就將使用經驗寫出來與大家分享。

iPhone內置的地圖軟件(以下稱為:iPhone地圖需要一邊用一邊從網上下載地圖資料,需要在上網狀態下先才可以使用,所以當身處外地而無法上網時,地圖功能變成有等於無。

現時GPRS數據漫遊收費仍然極貴,一般每1Kbyte收費由MOP0.1MOP0.2之間,而使用iPhone地圖瀏覽網上地圖需要使用巨大GPRS流量,例如截入一個細緻到可以看到店舖名稱的地圖畫面,就需要1MB左右流量,以平均MOP0.15/Kbyte計算,收費就已經超過MOP150。雖然現在有網絡供應商推出固定收費的GPRS數據漫遊套餐,但收費亦不便宜。所以想在外遊時使用iPhone地圖,又不想破費的話,就需要使用離線地圖。

什麼是離線地圖?其實沒有什麼特別,就是指在不上網的狀態下使用地圖功能。現時市面上有好幾種不同的iPhone離線地圖軟件,有一些是獨立的軟件,與iPhone地圖無任何關係,可以單獨使用,例如xGPS、拉手地圖等等。而有一些就只是iPhone地圖的外掛程式,功能只是完成一些工作,方便iPhone地圖在離線狀態下開啟地圖,其中最多人使用的是OfflineMap

iPhone地圖事實上是一款好好用的地圖軟件,而xGPS、拉手地圖造些獨立軟件我個人並不太喜歡。所以,以下只介紹在離線狀態下使用iPhone地圖的方法。

iPhone地圖運行原理

 

為了使大家容易明白,需要先解釋一下iPhone地圖的運作原理。


iPhone地圖的功能是將透過internetGoogle 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討論區爬文,裡面有多篇關於JailBreak的介紹和教程。

 

由於篇幅太長,本文會分為多篇,正題會由下篇開始!

繼續閱讀下一篇 >> Part 2:製作iPhone地圖緩存文件

如果喜歡這篇文章,請點個「讚」吧!

5 comments

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。

收到您的留言後,小弟會盡快回覆,您可以Bookmark本篇文章,方便之後回來查看回覆。回答您留言所查詢的問題有時候需要一些時間研究,請耐心等待。另外,如果您還未讚好過本Blog Facebook專頁,可以請給我一個讃嗎?!就當作是我花時間和精神解答您問題的一點支持吧。謝謝!

如果喜歡這篇文章,請點個「讚」吧!