First, download and install a map creation program. You will generally create the map data on a PC (Windows, Apple, Linux, etc.) and then transfer the map data to a folder on the Android device where it can be accessed by GPSTrak. There are many free and paid map creation programs available. .The following example uses a freely available program named Maperitive;
Maperitive
Suppose I am planning a trip to Tasmania. I hope to drive around the entire island and explore some of the natural areas on foot. I am concerned that I may not have cellular data access for creating maps in some of the areas I may be traveling. I would like to have map data for Tasmania stored on my Android device.
I download, install, and run Maperitive. I use a Windows based computer. Other brands of computer should follow a similar procedure.
I need to navigate to Tasmania on the displayed map. I click on the map then repeatedly press Shift-Minus to zoom out displaying a larger geographic area.
Scrolling to the East, locate Tasmania to the south of Australia. With the zoom level adjusted (use Shift-Minus and Shift-Plus) so that the entire country is displayed on the map, right-click with the mouse pointer over Tasmania on the map and select: "Place Geometry Bounds Here". Adjust the resulting box to cover the area of Tasmania that is of interest.
The next step is to to actually create the map data. First, be sure the format is correct. "Web map (OSM Mapnik)" should be displayed in the bottom right-hand corner of Maperitive within the "Map Sources" tab window.
Map data is stored as "tiles". Each tile represents a small square of the map. The tiles are provided for each zoom level. You want to create tiles for an area for each zoom level that you expect to use. But, more zoom levels require more data to be stored. For larger geographic areas, you may want to limit the data to lower zoom levels and reserve the higher zoom levels for smaller regions of interest. Each zoom level requires approximately 4 times as many tiles as the previous zoom level. The amount of data can become huge very quickly.
At the bottom of the Maperitive window you'll see a text field labeled "Command Prompt". In the text field enter the command: "generate-tiles minzoom=5 maxzoom=16" (without the quotes). This will generate map data for the outlined area for the zoom levels 5 through 16. Entering the command in the Command Prompt allows us to specify the minimum and maximum zooms. If you scroll the Commander window back a little bit you will see a line similar to "Started generating tiles into directory C:\Program Files (x86)\Maperitive\Tiles". This tells you the folder where the map data will be located.
It may take a while. When complete, "Done" is displayed in the Commander window.
The map data needs to be placed into a folder with the same name as the data source (see the Map Data Source setting above). The data collected here is from a map source named "Mapnik".
Navigate to the folder where the map tiles where saved (In Explorer in Windows. My tiles are saved in the folder C:\Program Files (x86)\Maperitive\Tiles). Create a directory named "Mapnik". You will see folders named "5", "6", "7",..., "16". Move these folders into the "Mapnik" folder. Now create a zip file named Tas.zip. Add the "Mapnik" folder to Tas.zip. (The name of the file is not important as long as the extension is ".zip").
Now Tas.zip needs to be copied to your Android device. I use FTP, but many devices provide a way to connect the device to your PC. Navigate to the folder on the Android device for map data. On my devices this folder is named: "/mnt/sdcard/osmdroid/", but this may be slightly different on each device. You may have to search around a bit. Transfer the Tas.zip file to the "osmdroid" folder on your device.