First convert all your data (user position, points) from lat/lon into x / y km, using the following formulae:
Y = lat * 111, X = lon * 111 * cos( lat )
(this will slightly fail with routes longer then 1000 miles, and dramatically fail near the poles or when your path crosses the 180-th meridian, hope it's OK for your task).
Then use the following formula to find the find the distance between the point and each segment: https://stackoverflow.com/a/1501725/126995, and search for the minimum distance. Some performance optimizations are required of your route has more then 200 segments.
P.S. If you're unhappy about the limitations of this method - look for the formulae for distance between the point and segment on the sphere, but I can assure you those will contain a lot of trigonometry, and I doubt the cheap android phones will do it fast with long routes.