Отслеживание их маршрута во время ходьбы будет включать в себя ряд точек пути. Если вы производите выборку, скажем, в 1 промежуточную точку каждые 10 секунд, то вы можете рассчитать расстояние между предыдущей и новой точками, используя метод «мухи-мухи», например, «haversine», или просто сделать несколько запросов веб-сервиса к внешнему сервису, такому как карты Google и их расстояние матрица, которая может дать вам расстояние между двумя точками, используя предложенный лучший путь.
http://code.google.com/apis/maps/documentation/distancematrix/
Вам просто нужно убедиться, что ваша частота дискретизации не слишком высока, или вы можете перейти через ограничение 2500 вызовов API / 24-часовой период (по каждому IP, я полагаю). Но 2500 даст вам 7 часов при 1 пробе за 10 секунд, или вы можете попробовать более низкую скорость, например, 1 за 35 секунд, и рискуете ошибиться в маршруте, но гарантируйте, что ваше устройство не пропустит 2500 проб.
Лично, если опрос местоположения свободен, я бы просто пошел с distanceBetween и проводил опрос каждые 1-2 секунды. Это должно быть достаточно коротким, чтобы точность GPS стала вашим основным источником ошибок.