OruxMaps

Map viewer/route logger for your outdoor activities.
OruxMaps works in two modes:
-online with many different types of maps (Google maps, OpenStreetMap, Microsoft Maps,etc.).
-offline with calibrated maps for the application. You can convert your Ozi Explorer maps, or create your own maps, with a desktop tool.
Allows you record tracks using GPS. It works with gpx and kml formats.

More features:
100% free
100% no Advertising
Map download
Text to Speech (some locales)
Wms support
Support to some .rmap maps
Support to vector maps (mapsforge)
Support to vector Garmin img maps (not locked)
Profiles
Save/restore preferences
Complete track statistics, with different graphs
External bluetooth GPS support
Export your tracks in KML/GPX formats
Follow your old tracks/routes, with distance alarm.
Save Waypoints with attached photo-audio-video media files. Wpt proximity alarm with custom audio alarm
Waypoint navigation mode
Geocaching support
Custom cursor images
Power save mode, for long track recording
Use a heart monitor with your device (supported Zephyr HRM, Polar Bluetooth and ANT+)