Mobile GMaps – Stored Maps on Mobile

| Posted by watashii | Filed under Software

Mobile GMaps is a free application for the java enabled mobile phone. The application can display maps downloaded from Google Maps, Live Maps/Virtual Earth, Yahoo Maps, Ask.com and OpenStreetMap.org. This means users can view stored/offline maps on the mobile phone without the need to connect to mobile internet. It can also use the phone’s GPS for locating the current position.

My mission was to store offline map tile-images from Google Maps on my phone memory stick and access it when ever I wanted without paying a cent! The other feature I used is the pin-point location bookmark to mark the places of interest for me. Although my phone is not GPS-enabled, it is quite a convenient tool to have around when I’m out, instead of carrying a big fat map book.

Here are the steps to get stored maps on the phone. The phone I used was a SonyEricsson W580 phone. It should work on most java enabled phone / PDA / Pocket PC. Download and install the free java application on to the mobile phone (JAD/JAR files) to begin.

  1. Use the Map Creation Tool to select the region to store.  Basically you need to single-click on the Google map to setup the red boundary points which defines the region you would like to cache on the phone. I recommend setting zoom level from 0 to 17 which provides details up to street level. The more zoom, the more tiles you would need to download, hence more storage on the phone. The level of detail is not that important, so just use fast and rough, and choose Google Road Maps.
  2. Press the generate button to download the map definition file named MapYYMMDDHHIISS.map. If you read the file on a text editor, its just some info about the latitude and longitudes of the selected regions, with the zoom level of interest. You can modify this file yourself for an enhanced setting. This is my map definition for Hong Kong.
    GoogleMap
    00-14 : 22.5468, 113.8252 : 22.1486, 114.4507
    13-17 : 22.5154, 113.9304 : 22.2093, 114.3089
  3. The next step is to download and run the tools that will interpret the map definition above. There are 2 tools available to do this:
    gMapMaker and MapTileCacher/MapTileFE .
  4. gMapMaker is a GUI based (open source) tool that runs on Windows. I had some bad experiences with not being able to download the tile set completely. The GUI may seem user friendly, but downloaded results were somehow incomplete. Maybe this will work for you instead!
  5. MapTileCacher/MapTileFE is a command line based perl script which worked perfectly for me, but requires a few setup steps before use. Make sure ActivePerl and Cygwin is installed with the wget package. To get the perl script tools running, we just need to place the map definition and the 2 perl scripts on the same folder and run the MapTileFE script from Cygwin. This script will repeately call the MapTileCacher for each zoom level. The MapTileCacher performs the actual tile image downloads from Google maps.
  6. Open Cygwin, locate the folder containing the above files, and run the command to begin download: perl MapTileFE.pl Map20080722232903.map
  7. A folder MGMapsCache is created, and each subfolder will contain the map tiles for each zoom level.
  8. Transfer the MGMapsCache folder on to the phone’s memory stick. Any location is fine.
  9. Run the Mobile GMaps java application on the phone, and select Settings (7) > Map Browsing > Storage Path > and locate the MGMapsCache folder
  10. Restart the Mobile GMaps java application, and it should start showing the maps.

Some additional notes:

  1. For advanced users, modify the MapTileCacher file to specify a proxy. This is needed because you can get banned from excessive download (eg Google maps)
  2. You can interrupt/kill the download scripts in the middle of operation. To resume, just run the script again and it will automatically skip the files that are already been downloaded.
  3. You can download regions from multiple map definitions and place them all into the same MGMapsCache folder. For example, Hong Kong and London.
  4. You can download tiles from multiple sources such as Google satellite and Google hybrid for the same region. They are stored in a non-overlapping seperate subfolders under the MGMapsCache folder.

Share:

  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • Print
  • email

Related Posts:

  1. Google Maps – Finding Latitude and Longitude

Tags: , , , , , , , , , , , , , ,

Leave a Reply