How to get maps for off-line usage?
OsmAnd (on Play store or F-droid.org (version is sometimes a little behind)) has those features:


Fully open source 
Fully offline (w/ option for some online features)
Play Store: Limited to 16 downloads (free) or costs ~6EUR (for funding)
(build it yourself or use a nightly build if don't want to pay or use the free one)
Offline vector maps:


based on Openstreetmap data
create your own with OsmandMapCreator
many pre-built areas available with in-app downloading

Online tile-based maps (data-caching plugin for GMaps/Bing/Yahoo/ and 25? others)
OSM integration (bug report, GPX uploads, live editing)
Voice guided offline navigation
GPX tracking


The unlimited app (in Google Play) costs a small fee (around 3EUR) to fund the project. Please consider buying it once you tested the free version and like it and don't just leech the nightly if you don't just want to test the bleeding edge features. You can of course also build your own (its FOSS).