Hello,
For android and if you don't need a cadence sensor there are a lot of solutions my personal favorite follows. Have a look at
runningdigital, ut's a website published by a british runner and on the right you'll find links to a lot of applications.
If you need a cadence sensor, there are two solutions: the expensive
Velocomputer solution or the switch to a Android phone that supports ANT+, curently only a few Sony do).
If you don't need a cadence sensor, then a very good choice is
sportstracklive. The app is not free ($10) but you get for what you pay. The measurement is extensive, really extensive.
Sportstracklive works well with
Zephyr HXM BlueTooth heart rate sensor ($90)
STL (SportsTrackLive) records distance, tracks route, and a incredibly high amount of data especially coupled with the Zephyr.
STL (SportsTrackLive) is far better than
endomondo .. in any way but one : the associated website design.
The solution I use : using STL for tracking then exporting the result in GPX from STL website and importing it in endomondo website
If you just need to track route, the free Google Maps addon
MyTracks is pretty good (but very limited).
For a turn by turn navigation the free Google Maps addons
Navigation is the perfect tool
Hope this helps
Luc