如何计算Android应用程序中两点之间的距离

Siv*_*a K 3 android distance

在我的应用程序中,我试图计算一个人从一个地方旅行到另一个地方的距离.为此,我使用的是Haversine配方,

R = earth’s radius (mean radius = 6,371km)
?lat = lat2? lat1
?long = long2? long1
a = sin²(?lat/2) + cos(lat1).cos(lat2).sin²(?long/2)
c = 2.atan2(?a, ?(1?a))
d = R.c 
Run Code Online (Sandbox Code Playgroud)

得到起始地点和到达地方的纬度和经度,我正在计算以kms为单位的距离.但是其他人说,这种距离计算只有在气道行进时才有效,如果用户通过公路行驶则会变化.

如果是这样的话,我怎样才能在穿越道路时获得正确的距离.

请帮帮我的朋友

Max*_*xim 6

此方法在标准API(Location.distanceBetween方法)中) http://developer.android.com/reference/android/location/Location.html