I use Strava on iPhone to help track things like mileage on parts. However it doesn't give the true picture because I don't run it every single time I ride. I have a small wired computer on the bars mainly for speed and trip distance readout, but also to keep track of the actual miles on each bike (I have one each of the same computer on each of my bikes).
Trying to use a smart phone for instantaneous readout of speed, etc. is IMHO a huge waste of battery power.