iPod touchの純正地図ツール「マップ」を、無線LANのないオフライン環境で利用することが可能になった。GMDLで地図データをダウンロードしてtouchに転送し、転送したデータをtouchの勝手アプリMaps Offlineでキャッシュ化するのだ。
iPod touchの「マップ」は、Googleマップをタッチパネルで操作できる優良純正ツールだ。無線LAN環境でしか使えないなんてもったいなすぎる。通称「脱獄」と呼ばれる処理を行ったtouch上にインストールできる「Maps Offline」は、touch内に保存された地図データを、Mapsのキャッシュとして利用するための勝手ツール。キャッシュからのデータ読み込みはオフライン環境でも可能なため、外出先で閲覧したい範囲の地図をデータとしてtouchに送り込んでおく→「Maps Offline」でキャッシュ化、という流れによって、「マップ」をオフライン環境で利用することができるようになるのだ。「外出先で閲覧したい範囲の地図」は、フリーソフトGMDLで母艦マシンにダウンロードし、WinSCPで転送すればよい。地図データは、例えば23区全域で170MB程度。touchの容量を圧迫するほどのものではないぞ。
まずiPod touchを脱獄させて純正ツール「マップ」を導入し、さらにInstallerの「Utilities」から「Maps Offline」をインストールする。
GMDLを作者のサイト(「gmdl~.zip」)からダウンロードして解凍し、「bin\Debug」内の本体exeを起動。Googleマップのページ上でキーワード検索を行い、ダウンロードしたい範囲に合わせて拡大縮小し「Download the Map」。ここでは23区内全域のデータを取得する。
指定した範囲が、エリアごとに分割されて表示される。不要なエリアはチェックを外して上部のボタンをクリック。
ダウンロードが始まるので少し待とう。各エリアの、各倍率の地図データが全てHDD内に落とされていくのだ。
ダウンロードが終わったら「->iPhone」。「Output」に保存先フォルダを指定し「Process」。このとき、「Output」に指定したフォルダが既に存在するとエラーが出る。例えば「Map」という空のフォルダを作成しておき、「Output」には「Map\Tokyo」を指定する、といったように設定すれば良い。
二つのファイルが出力される。「MapTiles.sqlitedb」を「Tokyo」など半角英数のファイル名に変更。拡張子は不要だ。
WinSCPでtouchに接続し、リネームしたファイルを「/private/var/mobile/Library/Caches/MapTiles/」に転送する。東京23区全域で約170MBだ。
touch上で「Maps Offline」を起動し、転送したファイルを選択するとキャッシュ化が始まる。後述するが、23区全域など広範囲なデータだと多少時間がかかる。ただ、一度キャッシュ化すれば、電源オフなどを行わない限り(詳細未検証)キャッシュは消えないので、「出かける前や電車の中などで一度行っておけば良い」という作業だ。
以後は、オフラインでも「マップ」を利用することができるようになる。キーワード検索は使えないので、あらかじめ行きたい場所を「お気に入り」に登録して外出先で呼び出すと良いだろう。
ドラッグでの移動や拡大縮小など、検索以外の機能はオンライン状態と同じだ。むしろキャッシュ化している分レスポンスが早くて快適になる。
東京23区全域など、広範囲のデータを「Maps Offline」でキャッシュ化するには多少時間がかかる。1~2分なので「耐えられない」というレベルではないが、気になる人は、GMDLで同様に作業を行い、例えば「秋葉原周辺のみの地図データ」「渋谷周辺のみの地図データ」といった狭い範囲の地図を複数転送しておくと良いだろう。一つの駅周辺ならデータサイズも1MB以下だし、「Maps Offline」でのキャッシュ化も一瞬だ。
2008年04月30日 23:09