Recs.
Updated
HERE is an online and offline map and navigation app created by Nokia. It is free to download and use.
SpecsUpdate
Pros
Pro Save maps for offline use
HERE allows users to save maps to their devices storage in order to allow offline usage of the app anytime.
Pro Has multilevel floor layouts for many airports and large shopping centers
Many airports and large buildings have an icon on them which, when tapped, opens up a 3D view of the floor plan with labelled locations of services, shops & transport etc. Includes an index for selecting each level of the building.
Pro Great smartwatch companion app
Excellent companion app allows navigation from your paired Samsung Gear S3 smartwatch. Has clear turn-by-turn instructions, vibration alerts at intersections, and zoomable location map (using rotating bezel). (Smartwatch app works with phone app and is not standalone).
Pro Includes public transport routing & schedules
Has train, ferry, bus etc. routes and schedules for many cities. The routes are overlaid on actual maps (spatially correct, vs the typical simplified diagrams of public transport networks) which I find reassuring and useful when exploring new locations. Also shows the schedules for next few services for any given station/stop. I'm not sure how accurate the schedules are though - they were incomplete for the small town where I live, but seemed more complete for major cities.
Pro Offline transit and walking directions
HERE is probably the only offline navigation app which has transit directions and walking directions when offline.
Cons
Con Map file size
Map downloads are huge in size, ranging from a few hundred megabytes, to a couple of gigabytes, depending on the size of the map being downloaded. Luckily, the app can be set to store them on external SD memory.
Recommendations
Comments
Out of Date Pros + Cons
Con July 2016 update breaks offline navigation
An update was released on July 27th, 2016 and suffers from bugs as offline navigation features are no longer working. You are also required to update the application when starting it, which effectively breaks offline navigation.