So you don’t have a data plan, and you’re not in range of an open Wi-Fi hotspot. What do you do? You have to be prepared of course.

This site exists to help you save money by not paying those expensive data rates incurred by EDGE/3G. Until the iPhone gets a real GPS app like MioMaps or Tom Tom, having offline content for Google Maps when you’re out of range of Wi-Fi is the next best thing.

You need a tool called Global Map Download Tool, or GMDT for short. This program downloads the various maps for your area at different levels of zoom. Don’t try to download the whole world! To give you an idea, Seattle takes up ~500MB. I guess even that isn’t too bad on a 16GB iPhone.

GMDT has a lot of options. So much, that the interface is very cluttered. Almost overwhelming in fact. The author packed in a lot of stuff but they are available to you all at once. Hence, the almost extreme complexity of it. However, if you know which options to change and click, you’re gold.

After the maps are downloaded you can load them on your iPhone via DiskAid or WinSCP. This works with the original iPhone as well as the 3G iPhone. However with the iPhone 3G, you can track your location on the map.

Tools:

GMDT from http://www.in7ane.com and unzip it somewhereDiskAid or WinSCP (used to copy files to a jailbroken iPhone with SSH installed)

1. Run GMDT (\GMDL\bin\Debug\Global Map Download Tool.exe). In the “Browse” tab, find the location you want to download. Hit the “Preview 1x” button to see a preview of what GMDT will download. Put your map name into “Map Name (start with _) box. In this case I put in “_seattle”. There are tons of other options here to change but leave those alone!

Click “Download The Map”

2. This window will pop asking you which parts of the map you want to download. You can select the various zoom levels too. I usually uncheck the waters or regions that don’t have much roads. On the left hand side it’ll tell you how much space it’ll take. Try to keep it under 2GB. Now click the long button left of the “Cancel” button.

3. GMDT will now begin downloading all the map tiles… be patient since this could take a very long time depending on what you selected.

4. When it finishes, click “OK”

5. Now click “iPhone” on the top right. This will convert it to a iPhone MapTiles DB file.

8. You now have 2 files. The MapTiles.sqlitedb file is the most important.

9. Use WinSCP or DiskAid to transfer the file in to /private/var/mobile/Library/Caches/MapTiles, replacing the one that Maps.app created. Here, I’m using WinSCP to copy over the files. DiskAid works well too and is more user-friendly.

To test, turn off your Wi-Fi. You should still see the map as your pan around. If you have a 3G iPhone, you’ll even see how it tracks your location.

There are some items I want to note. First, you can’t search or have directions. In order to use these features, you need network access. However, it’s still good enough for using it to tell you where you are if you have a GPS enabled iPhone.

If you have download lots of different regions you can use an app from Cydia called “Offline Maps” that simplify the process of switching map files. So you can have Oregon, Las Vegas, etc all uploaded to the phone and the app will switch them with a few clicks on the iPhone

NOTE for Firmware 2.2:

Starting with 2.2, new features were added to Google Maps on the iPhone so the maps created is not compatible. However you can download a converter here.