blankblank blank

Creating Offline Maps For Android Apps With MOBAC – II

Continuing on from the previous post, I’m going to create a mapset atlas using Mobile Atlas Creator (MOBAC) for offline use with a compatible Android application. An “atlas” can contain multiple mapsets of data from different sources, covering different areas, and with different data resolutions. I’m going to create an atlas with mapsets using:

  • OpenStreetMap road maps
  • Microsoft aerial maps (“Virtual Earth”)
  • USGS topographic maps

I’ll start with the OpenstreetMap maps, by selecting that map type from the dropdown menu, and also select the area I’m interested in. The first step is to choose the zoom levels I want data for:


Higher zoom levels correspond to a higher resolution, but this will also require more map tiles to be downloaded for a given area; lower zooms are lower resolution, but cover much more area. For aerial photos, you might want to get the highest possible resolution => high zoom, whereas for street maps, lower resolution may be adequate => low zoom. As you click on zoom levels, you’ll get a running total of all the map tiles that will need to be downloaded. Since you can also have multiple mapsets in a single atlas, each containing different kinds of data covering different areas,  you could have a lower-resolution road mapset covering a larger area, and then have a high-resolution aerial photo mapset covering a smaller area. Sometimes there’s no data for the zoom level you’ve selected. The area I’ve select is fairly small, and I’ll used it zoomed in close, so I’ll check the 15 and 16 zoom boxes.

The next section in the control panel lets you combine and modify the original data tiles into a different size and/or image format; unless you have a good reason to, you should leave these advanced settings alone:


Next is the Atlas Content definition section:

Atlas Content

First step is to give my atlas a name by right-clicking on it and choosing “Rename”; I’ll call it “KV” here (hit return to save the name). Next, I want to give a name to the mapset with the OpenStreetMap maps; I’ll call it “OSM in the “Name” section, and add it to the atlas with the “Add selection” button; this section now looks like this:


I now repeat the process for Microsoft aerial data and USGS topo maps by:

  • Choosing the map source
  • Choosing the zoom levels
  • Giving the mapset a name, and pressing “Add selection”


Next, I need to select the type of map data I’m creating, based on the Android app I’ll be using it with. In this example, I plan to use the data with an app called “TrekBuddy”, so I select that type:


“tared” means it’s compressed into the .tar format; there’s an option for untared, but compressed will save on space and number of files.

Now the atlas is ready for creation; click the “Create atlas” button, and MOBAC will start downloading map tiles and assembling them into the atlas:


Once completed, you’ll find the atlas files in a subdirectory of the “Atlases” directory (default location for “Atlases” is the directory that the MOBAC program is in, but you can change that in the program Settings). The subdirectory be named using the atlas name, with the date and time of creation appended to it. You’ll need to copy the appropriate map files for your app to the appropriate directory on your Android unit, possibly renaming them as well; more on this in upcoming posts.

As map tiles are downloaded, they’re saved in a special cache, so if you need them again they won’t have be downloaded afresh. The Tile store coverage control can show you what areas have map tiles for a particular map type and zoom level:


The Settings section lets you:

  • Set the distance unit (metric/imperial)
  • Choose which map sources to show in the dropdown, and set the program language
  • Set an expiration date for downloaded and cached tiles
  • Show you how many tiles are cached for each map type, and how much space they’re taking up
  • Set maximum map size allowed (different programs may have restrictions on this)
  • Set the default storage directory for atlases
  • Configure network connections.

There’s one final section that lets you load a GPX file, create waypoints on the map, and export them in standard GPX format – pretty straightforward to figure out.

I’ll review TrekBuddy soon, and use these maps for the demo. But next up, another app that creates mapsets for Android apps, but this one uses scanned map images and aerial photos instead of online map services.

Looking for something else? Enter some keywords below, then click "Search".    

0 Responses to “Creating Offline Maps For Android Apps With MOBAC – II”

  1. No Comments