2013-04-09 146 views

回答

2

使用android获取当前位置和所选位置之间的距离。

public static double distFrom(
    double lat1, double lng1, double lat2, double lng2) 
{ 
    double earthRadius = 3958.75; 
    double dLat = Math.toRadians(lat2-lat1); 
    double dLng = Math.toRadians(lng2-lng1); 
    double a = Math.sin(dLat/2) * Math.sin(dLat/2) + 
     Math.cos(Math.toRadians(lat1)) * Math.cos(Math.toRadians(lat2)) * 
     Math.sin(dLng/2) * Math.sin(dLng/2); 
    double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); 
    double dist = earthRadius * c; 

    return dist; 
} 
+1

或https://developer.android.com/reference/android/ location/Location.html#distanceTo%28android.location.Location%29 – 2013-04-09 04:42:06

+0

@ankitmakwana你能告诉我如何在WebView上放置经度和纬度点吗? – 2013-04-09 04:55:18

+0

@PratikButani可以显示使用GeoPoint – 2013-04-09 05:00:59

0

只有几行代码:

Location l1=new Location("One"); 
l1.setLatitude(location.getLatitude()); 
l1.setLongitude(location.getLongitude()); 

Location l2=new Location("Two"); 
l2.setLatitude(Double.parseDouble(frnd_lat)); 
l2.setLongitude(Double.parseDouble(frnd_longi)); 

float distance_bw_one_and_two=l1.distanceTo(l2);