I’ve been using Nokia’s maps and GPS on my ‘phone for some time. It works well on the road, but has basically no information other than roads (and while the roads data are good, other data such as rivers and railways are often inaccurate). An annoying artifact of the software assumes you’re on a road, and tends to “correct” the computed fix if you’re not. This leads to an illusion of greater accuracy, but ensures poorer reliability.
Recently I tried Google’s maps app. It’s very pretty, and contains rather more information than Nokia’s, though it’s also much slower e.g. to zoom/pan. From home it could see two GPS satellites, and computed a poor fix, nearly 200m away from me (I presume it combined the two GPS satellites with non-GPS info – maybe it knows individual mobile phone masts or something). Surprisingly, the fix was consistent: it gave me the same incorrect position the next day. But since that was from indoors, I gave it the benefit of the doubt: surely it’ll do better in the open.
Then I tried it while out walking. No use: it insists on a data connection (does it need to ‘phone home)? Unlike Nokia’s map, which asks for a connection on startup but works fine without one if I hit “cancel”, google’s refuses to proceed without it. Bah, Humbug.
This morning I tried another variant: I fired up google maps at home, then kept it running as I went out. No use: a short way down the road, it lost my WIFI and insisted on a new connection.
So, back to Nokia maps.
 A subject I do know about, both in theory (as a mathematician) and in practice (as someone who has done quite a lot of work in the field).