For my last ride, I recorded the same trip on eTrex Vista HCx and via the Android app. Distances came out at 25.1km and 24.6km.
Take yer pick as to which is the most accurate. Both were within 50cm of each other at all times, etrex in jersey pocket, android in phone pocket on the camelbak. eTrex may have had about 1min max extra run time while stationary.
Will grab the 2 GPX files tonight to compare, but I suspect Android (and probably iphone too) is probably just storing data at a lower rate than eTrex (which is 1 per second when properly locked).